chap5 体设计.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap5 体设计

第五章 总体设计;目 录;总体设计的两项任务;第五章 总体设计;结构设计:确定软件结构。;第五章 总体设计;一、模块化;二、抽象;三、逐步求精;四、信息隐藏和局部化;五、模块独立;1. 耦合;解析:综合分析图和表所提供的信息可知各个模块之间的耦合情况。如,当模块p调用模块q时(接口1),它传递了一个参数——飞机类型。当模块q把控制返还给模块p时,它返回一个状态标志。;某些模块之间的耦合类型是明显的,如,模块p和q之间(接口1)、模块r和t之间(接口5)以及模块s和u之间(接口6)都是数据耦合,因为它们传递的都是一个简单变量。;若两个模块中的一个模块给另一个模块传递控制元素,即,如果一个模块明显地控制另一个模块的逻辑,则它们之间具有控制耦合。例如,当给具有逻辑内聚的模块传递功能代码时就传递了控制元素。另一个控制耦合的例子是把控制开关作为一个参数传递。图中模块q调用模块r时(接口3)传递一个功能代码,因此,这两个模块之间是控制耦合。;由文字说明“模块p、t和u更新同一个数据库”可知,它们之间具有公共环境耦合。;当模块p调用模块s(接口2),若模块s使用或更新模块p传递给它的零件清单中的所有元素,则模块p和模块s之间的耦合是数据耦合;但是,若模块s只访问该清单中的一部分元素,则模块p和s之间的耦合是特征耦合。模块q和s之间(接口4)的耦合情况与次类似。由于题中图和表所给出的信息不足以准确地描述各个模块的功能,所以不能确定这两对模块之间的耦合是数据耦合还是特征耦合。;2. 内聚;过程内聚:模块内的处理元素是相关的,且必须以特定次序执行。;解析:从图中可以看出,这个程序的功能是计算若干个指定地点的每日平均温度。变量sum保存某地一天之内在指定的时间取样点的温度之和。程序运行时首先初始化变量sum并打开文件,然后读取地点、时间和温度等原始数据,创建用于保存这些数据的温度记录,接下来计算特定地点的日平均温度,存储温度记录。重复调用“读取地点、时间和温度”、创建新的温度记录、“计算特定地点的日平均温度”和“存储温度记录”等模块,直至计算出并保存好所有指定地点的日平均温度。最后,打印平均温度并关闭文件。;从上述叙述中可知, “计算多个地点的日平均温度” 、 “创建新的温度记录”、“读取地点、时间和温度” 、 “存储温度记录”和“计算特定地点的日平均温度”等5个模块,每个都完成一个单一的功能,模块内所有处理元素都为完成同一个功能服务,彼此结合得十分紧密,因此,这5个模块的内聚类型都是功能内聚。;初看起来,由于初始化变量sum和打开文件这两个操作都是在程序运行的初始阶段完成的, “初始化变量sum并打开文件” 这个模块的内聚类型似乎是时间内聚。但是,初始化变量sum是本程序特有的操作,而打开文件是硬件要求的操作,是任何使用文件的程序都包含的一个操作,并非本程序特有的操作。当可以分配两个或更多个不同级别的内聚类型给一个模块时,规则是分配最低级别的内聚类型给该模块。故这个模块的内聚类型是偶然内聚。;第五章 总体设计;改进软件结构提高模块独立性;模块的作用域应该在控制域之内;力争降低模块接口的复杂程度;第五章 总体设计;一、层次图和HIPO图;正文加工系统;二、结构图;产生最佳解的结构图;第五章 总体设计;一、概念;(2) 事务流;精化数据流图;二、变换分析;设计 步??:;确定数据流图具有变换特性还是事务特性;读旋转信号;Cm;第二级分解的方法;接收 传感器信号;数字仪表板软件系统经过调整后的结构图;三、事务分析; 设计优化 先使系统工作起来,然后使它快起来。

文档评论(0)

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

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

1亿VIP精品文档

相关文档