软件工程导论(第五版)第五章资料.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
变换设计的基本方法有两步: 1)分解第一层模块结构 就是把整个变换分解成输入控制模块Ci、输出控制模块Co和变换中心控制模块Ct,由主控模块控制。 主控模块 输出控制模块Co 变换中心控制模块Ct 输入控制模块Ci 2)分别设计输入、输出和处理的下层模块结构 方法是: 从变换中心边界向两侧移动,分别把输入通路和输出通路的每个处理映射成输入控制模块Ci和输出控制模块Co的下属模块。 变换中心的下层模块,是把每个处理映射成变换中心控制模块Ct的一个直接下属模块。 A B C D F E G H I J K 变换中心 输入 输出 主控模块 输出控制模块Co 变换中心控制模块Ct 输入控制模块Ci D C B A E F G I H J K 事务设计就是从事务型数据流图映射出软件模块结构的过程,也称为以事务为中心的设计。 5.5.4 事务设计 事务设计的基本方法有两步: 1)建立主控模块、接收输入类型分析模块和事务调度模块; 主模块 调度 输入类型分析 2)分别设计输入类型分析模块和调度模块的下层模块结构。 方法是:将输出的每条通路作为调度模块的一个判断分支,而输入类型分析模块的下层模块与变换设计类似。 I2 I3 I1 TC A1 B1 C1 A2 B2 C2 事务中心 主模块 调度 输入类型分析 I1 I3 I2 A1 A2 B1 B2 C1 C2 第5章小结 ◇ 概要设计说明书 该说明书是概要实际阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础。 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 1. 这门课的老师:杨易扬 * * 2)顺序内聚(Sequential Cohesion) 如果一个模块内处理元素和同一个功能密切相关,而且这些处理元素必须顺序执行,则称为顺序内聚。 如图,一个求一元二次方程根的模块由三个处理元素组成,该模块中存在顺序内聚。 通常,顺序内聚中一个处理元素的输出是另一个处理元素的输入。 求一元二次方程根模块 1.输入方程系数 2.求解 3.打印方程的解 顺序内聚示例 3)通信内聚(Communicational Cohesion) 如果一个模块中所有处理元素都使用同一个输入数据和(或)产生同一个输出数据,称为通信内聚。 如图,模块A的处理单元将根据同一个数据文件FILE的数据产生不同的表格,因此它存在通信内聚。 通信内聚有时也称为数据内聚。 A 从文件FILE中读出数据 1.由数据产生报表A 2.由数据产生报表B 通信内聚示例 4)过程内聚(Procedural Cohesion) 如果一个模块内的处理元素是相关的,而且必须以特定的次序执行,称为过程内聚。 过程内聚与顺序内聚的区别是: 顺序内聚中是数据流从一个处理单元流到另一个处理单元,而过程内聚是控制流从一个动作流向另一个动作。 5)时间内聚(Temporal Cohesion) 如果一个模块包含的任务必须在同一段时间内执行,称为时间内聚。也称为瞬时内聚。 例如,完成各种初始化工作的模块,或者处理故障的模块都存在时间内聚。 如图,在“紧急故障处理模块”中,“关闭文件”、“报警”、“保留现场”等任务都必须无中断地同时处理。 紧急故障处理模块 1.关闭文件 2.报警 3.保留现场 时间内聚示例 6)逻辑内聚(Logical Cohesion) 如果模块完成的任务在逻辑上属于相同或相似的一类,称为逻辑内聚。 如图,A、B、C模块合并成ABC模块之后,ABC模块就是逻辑内聚模块。 X Y Z A B C X Y Z ABC 合并 逻辑内聚示例 对逻辑内聚模块的调用,常常需要有一个功能开关,由上层调用模块向它发出一个控制信号,在多个关联性功能中选择执行某一个功能。 这种内聚较差,增加了模块之间的联系,不易修改。 7)偶然内聚(Coincidental Cohesion) 如果一个模块由完成若干毫无关系的功能处理元素偶然组合在一起的,就叫偶然内聚。 偶然内聚是最差的一种内聚。 常犯这种错误的一种情况是:有时在写完程序后,发现一组语句在多处出现,于是为了节

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档