4.22软件模块设计准则 P 2 扇出过大 2 3 扇入过大 第4章软件总体设计
第4章 软件总体设计 4.2.2 软件模块设计准则 P P P1 P2 扇出过大 Q Q Q1 Q2 Q3 扇入过大
4.22软件模块设计准则 3.模块的作用范围应该在控制范围之内。 ◆模块的作用范围:指受该模块内一个判断影响的所有模块 的集合; ◆模块的控制范围:指模块本身以及其所有直接或者间接从 属于它的模块集合; 在设计的好的软件结构中,所有受判断影响的模块都从属 于作出判断的那个模块,最好局限于做出判定的那个模块本 身及它的直属下级模块 第4章软件总体设计
第4章 软件总体设计 4.2.2 软件模块设计准则 3.模块的作用范围应该在控制范围之内。 ◆ 模块的作用范围:指受该模块内一个判断影响的所有模块 的集合; ◆ 模块的控制范围:指模块本身以及其所有直接或者间接从 属于它的模块集合; 在设计的好的软件结构中,所有受判断影响的模块都从属 于作出判断的那个模块,最好局限于做出判定的那个模块本 身及它的直属下级模块
4.22软件模块设计准则 M G B A的作用范围 E F A的控制范围 第4章软件总体设计
第4章 软件总体设计 4.2.2 软件模块设计准则 M A G B C D E F A的作用范围 A的控制范围
4.22软件模块设计准则 解决方案: ◆把模块A中的判定移到模块M中。 ◆把模块G移到模块A下面,作为他的下级模块。 A的判定上移M M A B CG DE FI DEF 第4章软件总体设计
第4章 软件总体设计 4.2.2 软件模块设计准则 M A G B C D E F M A B C G D E F 解决方案: ◆把模块A中的判定移到模块M中。 A的判定上移 ◆把模块G移到模块A下面,作为他的下级模块
4.2.2软件模块设计准则 4模块接口设计要简单,以便降低复杂程度和冗余度。 ◆模块接口复杂是软件发生错误的一个主要原因,应该仔细 设计模块接口,使得信息传递简单并且和模块的功能一致。 例:解一元二次方程的函数 ◆QUAD_RooT(TBL,X 口其中数组TBL传送方程的系数 口数组X返回求得的根 4 QUAD_ROOT(A, B, C, ROOT1, ROOT2)(' 第4章软件总体设计
第4章 软件总体设计 4.2.2 软件模块设计准则 4.模块接口设计要简单,以便降低复杂程度和冗余度。 ◆ 模块接口复杂是软件发生错误的一个主要原因,应该仔细 设计模块接口,使得信息传递简单并且和模块的功能一致。 例:解一元二次方程的函数 ◆ QUAD_ROOT(TBL,X) 其中数组TBL传送方程的系数 数组X返回求得的根 ◆ QUAD_ROOT(A,B,C,ROOT1,ROOT2)