第4章 总体设计.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文档。上传文档
查看更多

7、内容耦合(出现的情况较少)发生下列情形,两模块之间就发生了内容耦合:1)一个模块直接访问另一个模块的内部数据。2)一个模块不通过正常入口转到另一模块内部。3)两个模块有一部分程序代码重叠。(汇编语言)软件设计的原则第29页,共71页,星期日,2025年,2月5日耦合度是一个抽象的概念,但它能用一个可操作的概念来描述,即程序员在编码、调试和修改一个模块时,需要考虑修改另外一个模块的概率。如果两个模块是紧耦合的,那么它修改一个模块时,需要修改另外一个模块的概率就高。软件设计的原则第30页,共71页,星期日,2025年,2月5日耦合度是评价程序质量的重要指标,耦合度越小,则每个模块越容易独立地被理解、编写和修改,同时每个模块的错误越不容易扩散蔓延到其他模块。为了降低耦合度,可采取如下方法:1、用过程语句(函数方式等)调用其它模块,降低接口复杂性;2、模块间传送的参数是数据,尽量使用数据耦合,少用控制耦合,限制公共耦合的范围,坚决避免使用内容耦合;3、模块间公用的信息尽量少。软件设计的原则第31页,共71页,星期日,2025年,2月5日模块内聚性:内聚是描述一个模块内各个元素之间关系的一个概念,是对各元素彼此结合的紧密程度的一种度量。功能内聚顺序内聚通信内聚过程内聚时间内聚逻辑内聚巧合内聚高低内聚性强弱模块独立性软件设计的原则第32页,共71页,星期日,2025年,2月5日内聚性分类功能内聚:模块中的各个程序段联合起来共同完成一个特定的具体的单一的功能,模块中各个部分都是完成该功能必不可少的部分,模块的各个部分协同工作、紧密联系、不可分割。第33页,共71页,星期日,2025年,2月5日如果一个模块内处理元素和同一功能密切相关,而且这些处理元素必须顺序执行,则称为顺序内聚。顺序内聚求一元二次方程的根的模块1、输入系数2、求解3、输出方程的解内聚性分类第34页,共71页,星期日,2025年,2月5日模块中的成分需要用同样的输入数据或产生的相同的输出数据时称为通信内聚。模块内各功能段有公用的信息区。如图:1和2所对应的功能均需要利用文件File进行操作。通信内聚模块A从文件File中读出数据1、由数据产生报表一2、由数据产生报表二内聚性分类第35页,共71页,星期日,2025年,2月5日过程内聚:模块内部各个组成部分的处理动作不相同。但他们受同一控制流支配,并由这个控制流决定它们的执行顺序。过程内聚内聚性分类循环体计算累积事务记录累积销售额累积订货量第36页,共71页,星期日,2025年,2月5日要求在系统运行的同一时间内处理的元素组成一个模块。图中关闭文件、报警、保留现场等任务必须无间断地同时处理。时间内聚关闭文件紧急意外故障处理报警保留现场···内聚性分类第37页,共71页,星期日,2025年,2月5日逻辑内聚:几种相关的功能组合在一起,每次被调用时,由传送给模块的控制型参数来确定该模块应执行哪一种功能。逻辑内聚模块表明了各部分之间在功能上的相关关系。内聚性分类逻辑内聚第38页,共71页,星期日,2025年,2月5日模块TMOVATOBREADCardfileMOVCTODPQRS巧合性内聚此例中每条语句之间各不相干,只因为P、Q、R、S都要用到它们,为了节省一些存储空间,将它们放在一个模块中。问题:这种模块不易取名,模块含义不易理解,难以测试,不易修改。当P、Q有不同要求(如P要求MOVEATOE)时T的修改会很复杂。因为它们本来互不相关,所以变动的可能性很大。当存储空间不是很紧张时,应尽量避免巧合性内聚。内聚性分类第39页,共71页,星期日,2025年,2月5日软件结构的设计优化准则:1、划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性。模块划分的准则:“将相关的各部分放在一起,无关的东西不要放在一起。”2、模块的大小要适中。3、软件结构的深度、宽度、扇入、扇出应适当。深度表示控制的层数。宽度表示控制的总分布。扇出是对由某一模块直接控制的模块数目的度量。扇入指出有多少个模块直接控制一个给定的模块。设计

文档评论(0)

xiaozhuo2022 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档