总体设计过程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

附加符号:选择调用:判定为真时调用A,为假时调用B。循环调用:模块M循环调用模块A、B、C。注意:层次图和结构图并不严格表示模块的调用次序,多数人习惯按调用次序从左到右画模块;层次图和结构图并不指明何时调用下层模块;层次图和结构图只表明一个模块调用那些模块,没有表示模块内还有没有其他成分;通常用层次图作为描绘软件结构的文档;由层次图导出结构图的过程,可以作为检查设计正确性和评价模块独立性的好方法。5.5面向数据流的设计方法面向数据流的设计方法定义了一些不同的“映射”,利用这些映射可以把数据流图变换成软件结构。因为任何软件系统都可以用数据流图表示,所以面向数据流的设计方法理论上可以设计任何软件的结构。通常所说的结构化设计方法(简称SD方法),也就是基于数据流的设计方法。2.内聚内聚:标志一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。简单地说,理想内聚的模块只做一件事情。要求:设计时应该力求做到高内聚,通常中等程度的内聚也是可以采用的,而且效果和高内聚相差不多;但是,低内聚不要使用。内聚和耦合是密切相关的,模块内的高内聚往往意味着模块间的松耦合。实践表明内聚更重要,应该把更多注意力集中到提高模块的内聚程度上。内聚程度的度量:(1)偶然内聚(coincidentalcohesion)如果一个模块完成一组任务,这些任务彼此间即使有关系,关系也是很松散的,就叫做偶然内聚。MA=B+CGETCHERIFR=5THENS=1评价:模块内各元素之间没有实质性联系,很可能在一种应用场合需要修改这个模块,在另一种应用场合又不允许这种修改,从而陷入困境;可理解性差,可维护性产生退化;模块是不可重用的。解决方案:将模块分成更小的模块,每个小模块执行一个操作。(2)逻辑内聚(logicalcohesion)如果一个模块完成的任务在逻辑上属于相同或相似的一类,则称为逻辑内聚。评价:接口难以理解,造成整体上不易理解;完成多个操作的代码互相纠缠在一起,即使局部功能的修改有时也会影响全局,导致严重的维护问题;难以重用。解决方案:模块分解。(3)时间内聚(temporalcohesion)如果一个模块包含的任务必须在同一段时间内执行,就叫时间内聚。执行初始化打开旧主文件、新主文件、事务文件和打印文件;初始化销售地区表;读第一条事务记录和第一条旧主文件记录;评价:时间关系在一定程度上反映了程序某些实质,所以时间内聚比逻辑内聚好一些。模块内操作之间的关系很弱,与其他模块的操作却有很强的关联。时间内聚的模块不太可能重用。(4)过程内聚(proceduralcohesion)如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。使用程序流程图作为工具设计软件时,常常通过研究流程图确定模块的划分,这样得到的往往是过程内聚的模块。过程内聚模块读入成绩单读入并审查成绩单审查成绩单统计成绩打印成绩统计并打印成绩评价:比时间内聚好,至少操作之间是过程关联的。仍是弱连接,不太可能重用模块。解决方案:分割为单独的模块,每个模块执行一个操作。(5)通信内聚(communicationalcohesion)如果模块中所有元素都使用同一个输入数据和(或)产生同一个输出数据,则称为通信内聚。即在同一个数据结构上操作。评价:模块中各操作紧密相连,比过程内聚更好。不能重用。解决方案:分成多个模块,每个模块执行一个操作。通信内聚模块产生职工工资报表并计算平均工资模块产生工资报表计算平均工资职工工资记录职工工资报表平均工资(6)顺序内聚(sequentialcohesion)如果一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行,一个内部成分的输出是另一个内部成分的输入,则称为顺序内聚。评价:根据数据流图划分模块时,通常得到顺序内聚的模块,这种模块彼此间的连接往往比较简单。(7)功能内聚(functionalcohesion)如果模块内所有处理元素属于一个整体,完成一个单一的功能,则称为功能内聚。功能内聚是最高程度的内聚。评价:模块可重用,应尽可能重用;可隔离错误,维护更容易;扩充产品功能时更容易。七种内聚的优劣评分结果:高内聚:功能内聚10分顺序内聚 9分 中内聚:通信内聚 7分 过程内聚 5分低内聚:时间内聚 3分

您可能关注的文档

文档评论(0)

177****4699 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档