[toc]
软件设计师笔记_第六章_结构化开发_精简考点
结构化分析
结构化分析的输出包括数据流图、数据字典和加工逻辑。
其中数据字典用来描述DFD中的每个数据流、文件以及组成数据流或文件的数据项,包括4类条目:数据流、数据项、数据存储和基本加工。
数据流图 DFD
数据流图建模应遵循( 自顶向下、从抽象到具体 )的原则。
- 数据流图包括外部实体、数据流、加工和数据存储。
- 外部实体是指存在于软件系统之外的人员、组织或其他系统;
- 数据流是由一组固定成分的数据组成,表示数据的流向;
- 加工是指输入数据流到输出数据流之间的变换;
- 数据存储用来表示存储数据。
E-R 图
E-R图是结构化分析过程的工具,用于数据建模,将现实世界中的事物抽象信息世界里的数据。
模块设计原则
- 保持模块的大小适中。
- 尽可能减少调用的深度。
- 多扇入,少扇出。
- 单入口,单出口。
- 模块的作用域应该在模块之内【作用域在控制域内】。
- 功能应该是可预测的。
各个内聚类型
- 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。
- 顺序内聚:处理元素相关,而且必须顺序执行
- 通信内聚:所有处理元素集中在一个数据结构的区域上
- 过程内聚:处理元素相关,而且必须按特定的次序执行
- 瞬时内聚(时间内聚):所包含的任务必须在同一时间间隔内执行
- 逻辑内聚:完成逻辑上相关的一组任务
- 偶然内聚(巧合内聚):完成一组没有关系或松散关系的任务
各个耦合类型
- 非直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的
- 数据耦合:一组模块借助参数表传递简单数据
- 标记耦合:一组模块通过参数表传递记录信息(数据结构)
- 控制耦合:模块之间传递的信息中包含用于控制模块内部逻辑的信息
- 外部耦合:一组模块都访问同一全局简单变量,而且不是通过参数表传递该全局变量的信息
- 公共耦合:多个模块都访问同一个公共数据环境
- 内容耦合:一个模块直接访问另一个模块的内部数据;一个模块不通过正常入口转到另一个模块的内部;两个模块有一部分程序代码重叠;一个模块有多个入口
真题
- 某考试系统的部分功能描述如下,审核考生报名表,通过审核的考生登录系统,系统自动为其生成一套试题,考试中心提供标准答案,问卷老师问卷,提交考生成绩,考生查看自己的成绩。若用数据流图对该系统进行建模,则( 试题 )不是外部实体。
- 结构化分析的输出不包括( 结构图 )。
- 某医院预约系统的部分需求为:患者可以查看医院发布的专家特长介绍及其就诊时间:系统记录患者信息,患者预约特定时间就诊。用DFD对其进行功能建模时,患者是( 外部实体 );用ERD对其进行数据建模时,患者是( 实体 )。
- 以下关于数据流图中基本加工的叙述,不正确的是( 加工规格说明需要给出实现加工的细节 )
- 绘制分层数据流图(DFD)时需要注意的问题中,不包括( 图中要表示出控制流 )。
- 结构化分析方法中,数据流图中的元素在( 数据字典 )中进行定义。
- 数据流图建模应遵循( 自顶向下、从抽象到具体 )的原则。
- 某零件厂商的信息系统中,一个基本加工根据客户类型、订单金额、客户信用等信息的不同采取不同的行为,此时最适宜采用( 判定表 )来描述该加工规格说明。
- 模块A提供某个班级某门课程的成绩给模块B,模块B计算平均成绩、最高分和最低分,将计算结果返回给模块A ,则模块B在软件结构图中属于( 变换 )模块。
- 某航空公司拟开发一个机票预订系统, 旅客预订机票时使用信用卡付款。付款通过信用卡公司的信用卡管理系统提供的接口实现。若采用数据流图建立需求模型,则信用卡管理系统是( 外部实体 )。
- 下列关于结构化分析方法的数据字典中加工逻辑的叙述中,不正确的是( 加工逻辑必须描述实现加工的数据结构和算法 )。
- 在采用结构化方法进行系统分析时,根据分解与抽象的原则,按照系统中数据处理的流程,用 ( 数据流图 )来建立系统的逻辑模型,从而完成分析工作。
- 结构化开发方法中,( 过程设计 )主要包含对数据结构和算法的设计。
- 结构化设计方法中使用结构图来描述构成软件系统的模块以及这些模块之间的调用关系。结构图的基本成分不包括( 控制 )。
- 在软件设计阶段进行模块划分时,一个模块的( 作用范围应该在其控制范围之内 )。