【软考】上午题8-结构化开发-中级软件设计师备考笔记
模块独立
衡量模块独立程度标准:耦合性、内聚性
尽量高内聚,低耦合,提高模块独立性
耦合(与模块独立性反比)
无直接耦合:无直接关系,耦合性最弱,独立性最高
数据耦合,两个模块有调用关系,传递简单数据
标记模块,传递数据结构
控制耦合,调用另一模块时,传递控制变量
外部耦合,通过软件外部环境连接
公共耦合,公共数据环境
内容耦合,直接用另一模块内的数据,或通过非正常入口转入另一模块内
内聚(与模块独立性正比)
偶然内聚(巧合内聚),模块内元素之间无联系
逻辑内聚,有若干逻辑相似功能,用参数决定哪个
时间内聚,把同时执行动作组合
过程内聚,按执行过程
通信内聚,各元素在同一个数据结构操作
顺序内聚,必须顺序执行
功能内聚,所用元素共同完成一个功能,缺一不可
系统结构设计原则(有个印象)
分解协调原则
logseq.order-list-type:: number自顶向下的原则
logseq.order-list-type:: number信息隐蔽、抽象的原则
logseq.order-list-type:: number一致性原则,统一规范、统一标准……
logseq.order-list-type:: number明确性原则, 功能明确,接口明确,消除多重功能和无用接口
logseq.order-list-type:: number模块耦合应尽可能小,内聚度应尽可能高
logseq.order-list-type:: number模块的扇入系数和扇出系数合理(一个模块调用其它模块个数扇出系数),通常3或4,一般不应过7,否则出错概率增大
logseq.order-list-type:: number模块规模适当,过大模块使系统分解不充分,过小模块降低模块独立性
logseq.order-list-type:: number模块作用范围应在控制范围之内
logseq.order-list-type:: number数据流图 DFD
顶层数据流图描述系统的输入输出
加工必须有输入数据流和输出数据流
数据流起点和重点至少一个是加工
找错的题,可能出现名字相同的错误
数据流类型往往有多种
数据字典 DD
对DFD中的数据流、文件、加工、构成数据流或文件的数据项做说明,可称为加工逻辑说明
有四类条目,数据流、数据项、数据存储、基本加工(无外部实体)
数据项是组成数据流和数据存储的最小项目,起点终点不在系统内,一般不在字典说明。
加工逻辑,也称小说明,不用说明具体流程
- 结构化语言,外层(顺序、选择、重复)内层
- 判定表
- 判定树
结构化分析结果
数据流图、数据字典、小说明、实体联系图
结构图
基本元素:模块,调用、数据