第4章 软件详细设计(2)

发布于 2021-04-01  468 次阅读


4.5 程序复杂度的概念及度量方法

开发成本周期以及内部错误。

  • 程序复杂度的度量目标及作用:

降低程序复杂性;

提高软件的简单性和可理解性;

降低软件开发费用、缩短开发周期;

减少程序内部潜藏的错误数量。

方法:McCabe流图和代码行度量方法。

  1. 流图(也成为“程序图”)

流图是根据程序控制流的复杂程度来定量、度量程序的复杂程度——即程序的环形复杂度

V(G)=?

目的:突出表示程序的控制流

曲边和结点围成的面积称为区域;

判定节点数(有两个判定节点的)+1=复杂度

  1. 计算环形复杂度的方法
  2. 程序复杂度的用途

分支越多或循环个数增加时,复杂度上升。/

环形复杂度高的程序往往是最困难的。

  1. 环形复杂度的特征
  • 简单的IF语句与循环语句复杂度是、
  • 嵌套IF语句与简单的CASE语句的复杂度类似
  • 模块间接口当成一个简单分支一处理
  • 一个行数>1的顺序程序与1行语句的复杂度相同

4.6 小结

http://www.uimaker.com/
做软件设计的

实践: 复杂度V(G)<=10是模块规模的合理上限


擦肩而过的概率