下图表示两个模块 M1 和 M2 的访问图。实心圆代表方法,空心圆代表属性。如果将方法 m 移至模块 M2,将属性保留在原处,那么对于两个模块的系统中模块之间的平均内聚和耦合,我们能说些什么?
(A)没有变化。
(B)平均内聚力上升但耦合度降低。
(C)平均内聚力下降,耦合度也降低。
(D)平均内聚力和耦合度增加。答案:(一)
解释:答案是“没有变化”
内聚是指模块的元素属于一起的程度。
耦合是软件模块之间相互依赖的方式和程度
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
这个问题的测验