1. 软件结构图的形态特征有哪些指标?各有什么含义?
答:
- 深度:指结构图控制的层次,即模块的层数。
- 宽度:指一层中最大的模块个数。
- 扇出:指一个模块直接下属模块的个数。
- 扇入:指一个模块直接上属模块的个数。
2. 软件结构有哪些优化原则?
答:
模块独立性准则:
划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性,以此原则优化初始的软件结构。
软件结构的形态特征准则:
软件结构的深度、宽度、扇入数和扇出数都要适当。
深度:表示软件结构中的层次。如果层数过多,应该适当调整分解程度。原则是上层分解的抽象些,下层分解的具体些。
宽度:同一-层次上模块数目的最大值。一般宽度应控制在5-9个模块。
扇出:扇出数过大意味着模块过分复杂,需要控制和调用过多的下级模块。扇出数过小,会导致层次加深。一般扇出数是3~5。
扇入:扇入数大,意味着共享该模块的上级模块数目多,但不能违背模块独立性原则而片面追求高扇入。.
模块的大小准则:
按模块的独立性,即根据模块的功能来决定模块的大小。过大的模块应该进行分解。过小的模块会增加模块间接口的复杂性,可以进行适当的合并,但不应降低模块的独立性。
模块控制域与作用域之间的准则:
一个模块的作用域应在其控制范围之内,且条件判定所在的模块应与受其影响的模块在层次上尽量靠近。模块的作用域:受该模块内一个判定影响的所有模块的集合模块的控制域:模块本身以及其所有下属模块的集合
模块的接口准则:
模块的接口要简单、清晰,力求降低模块接口的复杂程度,设计单入口、单出口的模块
3. 数据流模型的类型有哪些?各有什么特点?
答:
变换流,事务流,混合流
特点:
变换流
信息可以通过各种路径进入系统,信息在“流”入系统的过程中由外部形式变换成内部数据形式,这被标识为输入流。在软件的核心,输入数据经过一-系列加工处理,这被标识为变换流。
●通过变换处理后的输出数据,沿各种路径转换为外部形式“流"出软件,这被标识为输出流。
●整个数据流体现了以输入、变换、输出的顺序方式,沿一定路径前行的特征,这就是变换型数据流,简称变换流。
事务流
●当数据流经过一一个具有“事务中心”特征的数据处理时,它可以根据事务类型从多条路径的数据流中选择一条活动通路。这种具有根据条件选择处理不同事务的数据流,就是事务型数据流,简称事务流
混合流
在一个大型系统的DFD中,变换流和事务流往往会同时出现。例如,在一个事务型的DFD中,分支动作路径.上的信息流也可能会体现出变换流的特征。这种具有将事务流和变换流组合出现,就是混合型数据流,简称混合流
4. 简述面向数据流的变换以及事务设计方法的步骤。
答:
变换设计方法
●变换流的设计是变换特征数据流图到软件结构图的转换。设计步骤如下:
● 第一步:确定数据流图中的变换中心、逻辑输入和逻辑输出。
● 第二步:设计软件结构的顶层和第一层。
●第三步:设计中、下层模块。
?输入模块的下属模块的设计
?输出模块的下属模块的设计
?变换模块的下属模块的设计
●第四步:设计的优化
?输入部分的求精
?输出部分的求精
?变换部分的求精
5. 结构化详细设计工具有哪几种?各有什么特点?
答:
图形工具:把过程的细节表示成一个图的组成部分,在这个图上,逻辑构造用具体的图形来表示。
?流程图,盒图,PAD图
列表工具:用一个表来表示过程的细节,这个表列出 了各种操作及其相应的条件,即描述了输入、处理和 输出信息。
?判定表,判定树
语言工具:用伪代码来表示过程的细节,这种伪代码 很接近于编程语言。 ?PDL语言
6. 请使用面向数据流的设计方法对你的团队项目进行总体设计,将数据流图(DFD)变换得到系统的模块结构图(MSD)。
已完成
7.请选择合适的结构化详细设计工具对你的团队项目的模块进行详细设计。
已完成