下图表示两个模块M1和M2的访问图。实心圆表示方法,未实心圆表示属性。如果将方法m移到模块M2并保留属性的位置,那么对于两个模块系统中模块之间的平均内聚和耦合,我们能说什么呢?
(A)没有变化。
(B)平均内聚力增加,但耦合减少。
(C)平均内聚力下降,耦合也降低。
(D)平均内聚和耦合增加。答案: (A)
说明:答案是“不变”
内聚性是指模块的各个元素一起属于的程度。
耦合是软件模块之间相互依赖的方式和程度
M1和M2之间的耦合=(外部链接数)/(模块数)= 2/2 = 1模块的凝聚力=(内部链接数)/(方法数)M1的凝聚力= 8/4 = 2 M2的内聚= 6/3 = 2将方法m移至M2之后,我们得到耦合= 2/2 = 1 M1的内聚= 6/3 = 2 M2的内聚= 8/4 = 2
这个问题的测验