免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2014年下半年 嵌入式系统设计师 上午试卷 综合知识
  第15题      
  知识点:   模块独立   聚类   内聚
  关键词:   模块   内聚类型        章/节:   系统设计知识       

 
模块A、B和C都包含相同的5个语句,这些语句之间没有联系。为了避免重复,把这5个语句抽取出来组成一个模块D,则模块D的内聚类型为(15)内聚
 
 
  A.  功能
 
  B.  通信
 
  C.  逻辑
 
  D.  巧合
 
 
 

 
  第16题    2013年下半年  
   57%
在划分模块时,一个模块的作用范围应该在其控制范围之内。若发现其作用范围不在其控制范围内,则(16)不是适当的处理方法。
  第54题    2011年下半年  
   68%
关于程序模块优化的启发式规则有若干条,以下规则中,不符合优化规则的是(54)。
  第49题    2020年下半年  
   48%
以下规则中不符合优化规则的是(49)。
   知识点讲解    
   · 模块独立    · 聚类    · 内聚
 
       模块独立
        模块独立是指模块只完成系统要求的独立的子功能,并且与其他模块的接口简单,符合信息隐蔽和信息局部化原则,模块间关联和依赖程度尽可能小。衡量模块独立性的标准是耦合度和内聚度。内聚度是衡量同一个模块内部的各个元素彼此结合的紧密程度;耦合度是衡量不同模块彼此间相互依赖的紧密程度。
        (1)内聚。内聚是一个模块内部各个元素彼此结合的紧密程度的度量。一个内聚程度高的模块(在理想情况下)应当只做一件事。一般模块的内聚性分为7种类型,如下图所示。
        
        内聚的种类
        .偶然内聚(巧合内聚)。指一个模块内的各处理元素之间没有任何联系。
        .逻辑内聚。指模块内执行若干个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。
        .时间内聚。把需要同时执行的动作组合在一起形成的模块称为时间内聚模块。
        .过程内聚。指一个模块完成多个任务,这些任务必须按指定的过程执行。
        .通信内聚。指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或者产生相同的输出数据。
        .顺序内聚。指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入。
        .功能内聚。这是最强的内聚,指模块内所有元素共同作用完成一个功能,缺一不可。
        (2)耦合。耦合是模块之间的相对独立性(互相连接的紧密程度)的度量。耦合取决于各个模块之间接口的复杂程度、调用模块的方式以及通过接口的信息类型等。一般模块之间可能的耦合方式有7种类型,如下图所示。
        
        耦合的种类
        .无直接耦合。指两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息。因此,模块间耦合性最弱,模块独立性最高。
        .数据耦合。指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。
        .标记耦合。指两个模块之间传递的是数据结构。
        .控制耦合。指一个模块调用另一个模块时,传递的是控制变量,被调用模块通过该控制变量的值有选择地执行模块内某一功能。因此,被调用模块内应具有多个功能,哪个功能起作用受调用模块控制。
        .外部耦合。模块间通过软件之外的环境联结(如I/O将模块耦合到特定的设备、格式、通信协议上)时,称为外部耦合。
        .公共耦合。指通过一个公共数据环境相互作用的那些模块间的耦合。
        .内容耦合。当一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部,这种模块之间的耦合为内容耦合。
 
       聚类
        聚类是一种无监督学习过程。根据数据的特征,将相似的数据对象归为一类,不相似的数对象归到不同的类中,这就是聚类,每个聚类也称为簇。“物以类聚,人以群分”就是聚类的典型描述。
        聚类的典型算法有:基于划分的方法、基于层次的方法、基于密度的方法、基于网格的方法和基于统计模型的方法。基于划分的方法将单个数据对象划分为k个不相交的集合,每个集合称为一个簇。典型的算法有k-均值、k-中心点算法等。基于层次的方法将数据对象集进行层次的分解。根据其是自底向上还是自顶向下分解,可以分为凝聚的方法和分裂的方法,而前者的典型算法是AGNES,后者的典型算法是DIANA。基于密度的方法基于数据对象的邻域来进行聚类分析,因此可以识别各种形状的簇,以及一个数据对象可以属于多个不同的簇,DBSCAN、OPTICS和DENCLUE是其中的典型算法。基于网格的方法把对象空间量化为有限个单元,形成一个网格结构。所有的聚类操作在该网格上进行,STING和CLIQUE是其中的两个算法。基于统计模型的算法将数据对象集看作多个服从不同分布的数据集构成,聚类的目的是识别出这些不同的分布的数据对象,EM算法是其中的一个典型算法。
 
       内聚
        内聚是指模块内部各元素之间联系的紧密程度,例如一个完成多个功能的模块的内聚度就比完成单一功能的模块的内聚度低。内聚度越低,模块的独立性越差。内聚性有以下几种类型:
        (1)偶然内聚:指一个模块内的各个处理元素之间没有任何联系。
        (2)逻辑内聚:指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。
        (3)时间内聚:把需要同时执行的动作组合在一起形成的模块为时间内聚模块。
        (4)通信内聚:指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或者产生相同的输出数据。
        (5)顺序内聚:指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入。
        (6)功能内聚:这是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。
        耦合性和内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚、低耦合,提高模块的独立性。
   题号导航      2014年下半年 嵌入式系统设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第15题    在手机中做本题