常见的耦合与内聚ppt课件_第1页
常见的耦合与内聚ppt课件_第2页
常见的耦合与内聚ppt课件_第3页
常见的耦合与内聚ppt课件_第4页
常见的耦合与内聚ppt课件_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、常见的耦合与内聚n非直接耦合:两个模块之间没有直接关系,它们之间的联络完全是经过主模块的控制和调用来实现的。 n数据耦合:一个模块访问另一个模块时,彼此之间是经过简单数据参数 (不是控制参数、公共数据构造或外部变量) 来交换输入、输出信息的。n标志耦合:一组模块经过参数表传送记录信息,就是标志耦合。这个记录是某一数据构造的子构造,而不是简单变量。其实传送的是这个数据构造的地址; n控制耦合:假设一个模块经过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。 n外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据构造,而且不是经过参数表传送该全局变量的信息,那么称

2、之为外部耦合。 n公共环境耦合:当两个或多个模块经过一个公共数据环境相互作用时,它们之间的耦合称为公共环境耦合。n内容耦合 :当一个模块直接修正或操作另一个模块的数据时,或一个模块不经过不正常入口而转入另一个模块时,这样的耦合被称为内容耦合。内容耦合是最高程度的耦合,应该防止运用之。 n偶尔内聚 :假设一个模块的各成分之间毫无关系,那么称为偶尔内聚,也就是说模块完成一组义务,这些义务之间的关系松散,实践上没有什么联络。n逻辑内聚 :几个逻辑上相关的功能被放在同一模块中,那么称为逻辑内聚。如一个模块读取各种不同类型外设的输入。虽然逻辑内聚比偶尔内聚合理一些,但逻辑内聚的模块各成分在功能上并无关系

3、,即使部分功能的修正有时也会影响全局,因此这类模块的修正也比较困难。 n时间内聚:假设一个模块完成的功能必需在同一时间内执行如系统初始化,但这些功能只是由于时间要素关联在一同,那么称为时间内聚。 n通讯内聚:假设一个模块的一切成分都操作同一数据集或生成同一数据集,那么称为通讯内聚。 n顺序内聚:假设一个模块的各个成分和同一个功能亲密相关,而且一个成分的输出作为另一个成分的输入,那么称为顺序内聚。 n过程内聚:假设一个模块内的处置元素是相关的,而且必需以特定次序执行。n功能内聚:假设模块内一切处置元素属于一个整体,完成一个单一的功能。计算多个地点的日平均温度初始化变量sum并翻开文件创建新的温度

4、记录存储温度记录封锁文件并打印平均温度读取地点,时间和温度计算特定地点的日平均温度计算多地点日平均温度程序答:从上图的层次图能够看出,这个程序的功能是计算机假设干个指定地点的每日平均温度。变量sum保管某地一天之内在指定的时间取样点的温度之和。程序运转时首先初始化变量sum并翻开文件,然后读取地点,时间和温度等原始数据,创建用于保管这些数据的温度记录,接下来计算特定地点的日平均温度,存储温度记录。反复调用“读取地点,时间和温度,“创建新的温度记录“计算机特定地点的日平均温度和“存储温度记录等模块直至计算机出并保管好一切指定地点的日平均温度。最后,打印平均温度并并封锁文件。 从上述表达可知,“计

5、算多个地点的日平均温度,“读取地点,时间和温度,“创建新的温度记录,“计算特定地点的日平均温度和“存储温度记录等5个模块,每个都完成一个单一的功能,模块内一切处置元素都为完成同一个功能效力,彼此结合得非常严密,因此,这5个模块的内聚类型都是功能内聚。初看起来,由于初始化变量sum和翻开文件这两个操作都是在程序运转的初始阶段完成的,“初始化变量sum并翻开文件这个模块的内聚类型似乎是时间内聚。但是,初始化变量sum是本程序特有的操作,而翻开文件是硬件要求的操作,是任何运用文件的程序都包含的一个操作,并非本程序特有的操作。当可以分配两个或更多个不同级别的内聚类型给一个模块时,规那么是分配最低级别的

6、内聚类型给该模块。因此,“初始化变量sum并翻开文件这个模块的内聚类型是偶尔内聚。同理,“封锁文件并打印平均温度这个模块的内聚类型也是偶尔内聚。例2:分析以下图,确定模块之间的耦合类型。pqutsr124356模块p,t和u更新同一个数据库n在上图中曾经给模块之间的接口编了号码,下表描画了模块间的接口。编号输入输出1飞机类型形状标志2飞机零件清单3功能代码4飞机零件清单5零件编号零件制造商6零件编号零件称号n答:综合分析上图和上表所提供的信息可知各个模块之间的耦合情况。例如,当模块p调用模块q时接口1,它传送了一个参数-飞机类型。当模块q把控制返还模块p时,它传回一个形状标志。n某些模块之间的

7、耦合类型是明显的,例如,模块p和q之间接口1,模块r和t之间接口5及模块s和u之间接口6都是数据耦合,由于它们传送的都是一个简单变量。n假设两个模块中的一个模块给另一个模块传送控制元素,也就是说,假设一个模块明显地控制另一个模块的逻辑,那么它们之间具有控制耦合。例如,当给具有逻辑内聚的模块传送功能代码时就传送了控制元素。另一个控制耦合的例子是把控制开关作为一个参数传送。上图中的模块q调用模块r时接口3传送一个功能代码,因此,这两个模块之间是控制耦合。n上图右侧文字阐明,模块p,t和u更新同一个数据库,因此,它们之间具有公共环境耦合。n当模块p调用模块s时接口2,假设模块s运用或更新模块p传送给它的零件清单中的一切元素,那么模块p和s之间的耦合是数据耦合;但是,假设模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论