模块内聚度用于衡量模块内部各成分之间彼此结合的紧密程度。 1.一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚度是(48)的。 2.将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是(49)的。 3.模

admin2019-03-04  20

问题 模块内聚度用于衡量模块内部各成分之间彼此结合的紧密程度。
   1.一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚度是(48)的。
   2.将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是(49)的。
   3.模块中所有成分引用共同的数据,该模块的内聚度是(50)的。
   4.模块内某成分的输出是另一些成分的输入,该模块的内聚度是(51)的。
   5.模块中所有成分结合起来完成一项任务,该模块的内聚度是(52)的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。

选项 A、功能性
B、顺序性
C、通信性
D、过程性
E、偶然性

答案A

解析 软件概要设计是以需求分析所产生的文档为依据,着手解决实现“需求”的软件体系结构,简称软件结构。就像建筑工程中的盖大楼,需求分析主要是确定要盖满足什么样功能的大楼,而概要设计就是施工,盖起满足用户要求的大楼的框架。这一阶段确定软件结构的具体任务是将系统分解成模块,确定各模块的功能及调用关系,将用户的需求分配到适当的位置上去,得出系统的结构图。软件概要设计的原则是模块化、抽象化和信息隐藏,要达到这些原则,就要求模块具有独立性。模块内聚度用于衡量模块内部各成分之间彼此结合的紧密程度,模块内聚度由强到弱的顺序如图9-4所示。

(1)功能内聚(Functional Cohesion):一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作、:紧密联系、不可分割的,则称该模块为功能内聚模块。(2)信息内聚(Informational Cohesion):这种模块完成多个功能,各个功能都在同一数据结构上操作,每一项功能有一个唯一的入口点。这个模块将根据不同的要求,确定该执行哪一个功能。由于这个模块的所有功能都是基于同一个数据结构(符号表),因此,它是一个信息内聚的模块。信息内聚模块可以看成是多个功能内聚模块的组合,并且达到信息的隐蔽。即把某个数据结构、资源或设备隐蔽在一个模块内,不为别的模块所知晓。如果一个模块的各个成分和同一个功能密切相关,而且一个成分的输出作为另一个成分的输入,则称为顺序内聚。(3)通信内聚(Communication Cohesion):如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称之为通信内聚模块。通常,通信内聚模块是通过数据流图来定义的。(4)过程内聚(Procedural Cohesion):如果一个模块内部的处理成分是相关的,而且这些处理必须以特定的次序执行,则称为过程内聚。使用流程图作为工具设计程序时,把流程图中的某一部分划出组成模块,就得到过程内聚模块。例如,把流程图中的循环部分、判定部分、计算部分分成三个模块,这三个模块都是过程内聚模块。(5)时间内聚(Classical Cohesion):时间内聚又称为经典内聚或瞬时内聚。这种模块大多为多功能模块,但模块的各个功能的执行与时间有关,通常要求所有功能必须在同一时间段内执行。例如初始化模块和终止模块。(6)逻辑内聚(Logical Cohesion):这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的判定参数来确定该模块应执行哪一种功能。逻辑内聚的模块各成分在功能上并无关系,即使局部功能的修改有时也会影响全局,因此这类模块的修改也比较困难。(7)巧合内聚(Coincidental Cohesion):巧合内聚又称为偶然内聚。当模块内各部分之间没有联系,或者即使有联系,这种联系也很松散,则称这种模块为巧合内聚模块,它是内聚程度最低的模块。
转载请注明原文地址:https://jikaoti.com/ti/Ofx7FFFM
0

最新回复(0)