首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为______模块。
如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为______模块。
admin
2019-06-12
72
问题
如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为______模块。
选项
A、功能内聚
B、顺序内聚
C、通信内聚
D、过程内聚
答案
C
解析
一般模块的内聚性分为七种,如图2-28所示。
(1)功能内聚(Functional Cohesion)。一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作、紧密联系、不可分割的,则称该模块为功能内聚模块。它是内聚程度最高的,也是模块独立性最强的模块。功能内聚模块的优点是容易修改和维护,因为它们的功能是明确的,模块间的耦合是简单的。但是,如果把一个功能分成两个模块来解决,就会导致模块之间的很强的耦合,而且它们不易单独理解和实现。在把一个系统分解成模块的过程中,应当尽可能使模块达到功能内聚这一级,便于主程序的调用和控制。 (2)顺序内聚(Sequential Cohesion)。模块内各组成部分和同一个功能密切相关,而且一个组成部分的输出恰好是另一组成部分的输入,这种内聚称为顺序内聚。顺序内聚强调的是一个部分的输出要作为另一个部分的输入,这样,当上一个部分没有完成时下一个部分就不能执行,即强调顺序性,必须顺序执行。由于模块内各处理元素间存在着这种逻辑联系,所以顺序内聚模块的可理解性较强。 (3)通信内聚(Communication Cohesion)。如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为通信内聚模块。通常,通信内聚模块是通过数据流图来定义的。通信内聚模块的内聚程度比过程内聚模块的内聚程度要高,因为在通信内聚模块中包括了许多独立的功能。但是,由于顺序内聚模块中各功能部分使用了相同的输入/输出缓冲区,因而降低了整个系统的效率。 (4)过程内聚(Procedural Cohesion)。如果一个模块内的处理是相关的,而且必须以特定次序执行,则称这个模块为过程内聚模块。使用流程图作为工具设计程序时,常常通过流程图来确定模块划分,把流程图中的某一部分划出组成模块,就得到过程内聚模块。例如,把流程图中的循环部分、判定部分、计算部分分成3个模块,这3个模块都是过程内聚模块。这类模块的内聚程度比时间内聚模块的内聚程度更强一些。另外,因为过程内聚模块仅包括完整功能的一部分,所以它的内聚程度仍然比较低,模块间的耦合程度还比较高。(5)时间内聚(Classical Cohesion)。时间内聚又称为经典内聚。这种模块大多为多功能模块,但模块的各个功能的执行与时间有关,通常要求所有功能必须在同一时间段内执行,如初始化模块和终止模块。初始化模块要为所有变量赋初值,对所有介质上的文件置初态,初始化寄存器和栈等,因此要求在程序开始执行的最初一段时间内,模块中的所有功能要全部执行一遍。时间内聚模块比逻辑内聚模块的内聚程度稍高一些。因为时间内聚模块中所有部分都要在同一时间段内执行,而且在一般情形下,各部分可以以任意的顺序执行,所以它的内部逻辑更简单,存在的开关(或判定)转移更少。 (6)逻辑内聚(Logical Cohesion)。这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的判定参数来确定该模块应执行哪一种功能。例如,根据输入的控制信息的不同,或从文件中读入一个记录,或向文件写出一个记录。这种模块是单入口多功能模块。类似的还有错误处理模块,它接收出错信号,根据不同类型的错误打印出不同的出错信息。(7)巧合内聚(Coincidental Cohesion)。巧合内聚又称为偶然内聚。模块内各部分之间没有联系,或者即使有联系,这种联系也很松散,则称这种模块为巧合内聚模块,它是内聚程度最低的模块。例如,一些没有任何联系的语句可能在许多模块中重复多次,程序员为了节省存储,把它们抽出来组成一个新的模块,这个模块就是巧合内聚模块。这种模块的缺点首先是不易修改和维护。另外,有的书提到信息内聚模块,这种模块可完成多个功能,各个功能都在同一数据结构上操作,每一项功能有唯一的入口点。这种模块具有4个功能:在符号表中查找登记项;把新登记项登录到符号表中;从符号表中删除一个登记项;修改一个指定的登记项。这种模块将根据不同的要求,确定该执行哪一个功能。由于这种模块的所有功能都是基于同一个数据结构(符号表)的,因此称其为信息内聚模块。信息内聚模块可以看成是多个功能内聚模块的组合,并且达到了信息的隐蔽,即把某个数据结构、资源或设备隐蔽在一个模块内,不为别的模块所知晓。这种模块的优点是,当把程序某些方面细节隐藏在一个模块中时,各个模块的独立性就增加了。信息内聚模块的内聚程度介于功能内聚和过程内聚之间。事实上,没有必要精确确定某个模块的内聚级别,最重要的是在设计模块时力争做到高内聚,并且能够根据相关特征辨认出低内聚的模块,有能力通过修改来提高模块的内聚程度,降低模块间的耦合程度,从而获得独立性较高的模块。
转载请注明原文地址:https://www.kaotiyun.com/show/M7RZ777K
本试题收录于:
软件设计师上午基础知识考试题库软考中级分类
0
软件设计师上午基础知识考试
软考中级
相关试题推荐
下面的选项中属于链路状态路由选择协议的是__________。
若一个项目由9个主要任务构成,其计划图(如下图所示)展示了任务之间的前后关系以及每个任务所需天数,该项目的关键路径是(1),完成项日所需的最短时间是(2)天。(2008年下半年试题)(2)
某网络管理员在网络检测时,执行了undomac-addressblackhole命令。该命令的作用是__________。
假设网络的生产管理系统采用B/S工作方式,经常上网的用户数为100个,每个用户每分钟平均产生11个事务,平均事务量大小为0.06MB,则这个系统需要的信息传输速率为(34)。
按照美国制定的光纤通信标准SONET,OC-48的线路速率是(11)Mb/s。
X、Y为逻辑变量,与逻辑表达式X+XY等价的是____________。
下列选项中,同属于报文摘要算法的是______。
阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。说明类Queue表示队列,类中的方法如下表所示。类Node表示队列中的元素;类EmptyQueueException给出了队列操作中的异常处理操作。Java代码
流程图中文件F的纪录格式设定为见表4形式: 其中的①、②应定义为何种数据项?简述处理2、处理3和处理4作何种处理,若有排序处理则需指明排序的键及序(升序或降序)。
阅读以下技术说明以及Java程序,将Java程序中(1)~(5)空缺处的语句填写完整。[说明]用创建Thread类的子类的方法实现多线程,判断一个数是否是素数。如果是,打印“是素数”,如果不是,则打印“不是素数”,如果没有参数输入,显示“
随机试题
下列决策方法具有“迂回探索”特点的是【】
银行对账单不属于会计凭证,因而也就不属于会计档案。()
从骨折到完全骨化称临床愈合,一般需
某成年男性出现疲倦,体重下降,机体免疫力下降,伴有伤口愈合不良,营养性水肿。血常规检查Hb<130g/L,血浆蛋白低于正常。此时最适宜采取的膳食措施是
根据《生产过程危险和有害因素分类与代码》(GB/T13861—2009),危险源分为()。
涵化是指不同文化的群体间发生持续的接触,从而导致原有文化发生变迁的现象。根据上述定义,下列不属于涵化的是:
为了保持汉语的纯洁性,禁止在汉语出版物上的文章中夹杂外来词汇(比如英语1,就这个现象谈下你的看法。(2011年2月24日下午国家部、办、委、局面试真题)
由美国次贷危机引发的2008年国际金融危机是自20世纪30年代大萧条以来最为严重的全球性经济危机,它迅速从局部发展到全球。从发达国家传导到新兴市场国家,从金融领域扩散到实体经济领域,造成了一系列灾难性后果。在这场危机的影响下,西方国家在经济生活、政治生活和
在考生文件夹下,打开文档WORD1.DOCX,按照要求完成下列操作并以该文件名(WORD1.DOCX)保存文档。【文档开始】声明科学是中国发展的机遇新华网北京10月28日电在可预见的未来,信息技术和声明科学将是世界科技中最活跃
FlatswerealmostunknowninBritainuntilthe1850swhentheyweredeveloped,alongwithotherindustrialdwellings,forthela
最新回复
(
0
)