1.模块独立性基本概念
模块:在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。
模块独立性是指每个模块只完成系统要求的独立子功能,并且与其他模块的联系最少且接口最简单。衡量模块独立性的标准是耦合性和内聚性。(低耦合,高内聚)
模块独立性的作用:
(1)具有独立的模块的软件比较容易开发出来。这是由于能够分割功能而且接口可以简化。
(2)独立的模块比较容易测试和维护。相对来说,修改设计和程序需要的工作量比较小,错误传播范围小,需要扩充功能时能够“插入”模块。
2.耦合性
耦合性也称为模块间联系,指软件系统结构中各模块间相互联系的紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性就越差。
耦合性种类(低→高)
无直接耦合、数据耦合、标记耦合、控制耦合、公共耦合、内容耦合
·无直接耦合(最独立):属于不同模块控制与调用
·数据耦合:传递简单的数据值
·标记耦合:传递数据结构
·控制耦合:传递控制变量,当一个模块调用另一个模块时。被调用的模块通过该控制变量的值有选择地执行模块内某一功能。因此被调用模块内应具有多个功能、那个功能起作用,受调用模块控制。(www.xing528.com)
·公共耦合:指通过一个公共数据环境相互作用的那些模块间的耦合。
·内容耦合:当一个模块直接另一模块的内部数据,或通过非正常入口而转入另一个模块内部,这种模块间的耦合为内容耦合,这种情况往往出现在汇编程序设计中。
耦合采取的原则:尽量使用数据耦合,少用控制耦合,限制公共耦合,绝对不用内容耦合。
3.内聚性
内聚性也称为块内联系。指模块内部各个元素彼此结合的紧密程度的程度,它是信息隐蔽和局部化概念的自然扩展。若一个模块内各个元素的联系越紧密,则它的内聚性就越高。
内聚性种类(高→低)
功能内聚、顺序内聚、通信内聚、时间内聚、逻辑内聚、偶然内聚
·功能内聚(最强):模块内所有的元素共同完成一个功能缺一不可
·顺序内聚:密切相关,顺序执行,前一模块输出为下一模块输入
·通信内聚:所有处理在同一数据结构上操作
·时间内聚:同时执行,组合在一起
·逻辑内聚:若干个逻辑相似的功能,通过参数确定完成哪一个
·偶然内聚:各处理元素之间没有任何联系
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。