ZY
一般来说,按职能划分子系统、按逻辑划分模块的方式是比较合理 和方便的,图6-1所示就是按这种方式划分所组成的系统。
图6-1
子系统按职能划分、模块按逻辑划分所形成的系统ZY
4. 模块结构的质量标准 1) 模块的耦合方式 (1) 数据耦合。如果两个模块之间的通信信息是若干数据 项,则这种耦合方式称为数据耦合。例如,在图6-4中, 为了计算实发工资,“计算工资”模块必须把工资总额和 扣款数传输给“计算实发工资”模块,而“计算实发工资” 模块在算出实发工资后又送回到“计算工资”模块。计算工资 扣款数 总额 计算实发工资 实发工资
图6-4 数据耦合示例ZY
(2)控制耦合。如果两个模块之间传输的信息是控制 信息,则该耦合称为控制耦合。传送的控制信息可 分成两类,一类是判定参数,调用模块通过该判定 参数控制被调用模块的工作方式,若判定参数出错 则导致被调用模块按另一种方式工作;另一种是地 址参数,调用模块直接转向被调用模块内部的某一 些地址,这时若改动一个模块则必将影响另一模块, 因为控制耦合方式的耦合程度较高,应尽量避免采 用地址参数的方式。
ZY
(3)非法耦合。两个模块之间,不经过调用关系,彼此直 接使用或修改对方的数据。这是最糟糕的耦合方式,在 结构化设计时决不允许出现这种情况。两个模块之间的 三种耦合方式如图6-5所示。
A
A
A
数 据
数 据
信 息
数 据
B 数据耦合 耦合度:低 性 能:好
B 控制耦合
B 非法耦合 高 坏
图6-5 模块的耦合方式
ZY