- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程导论(第五版)第六章讲解
2. 计算环形复杂度的方法 1)环形复杂度 V(G)等于流图中的区域数; 2)环形复杂度 V(G)=E-N+2,其中E是流图中边的条数,N是结点数; 3)环形复杂度 V(G)=P+1,其中P为流图中判定结点的数目。 例:计算下列程序图的程序复杂度 解: 方法一:程序图把平面分为4个区域,程序复杂度V(G)=4; 方法二:边的条数E=11,结点数N=9,程序复杂度V(G)=E-N+2=4 ; 方法三:判定结点为1、2、4点,数目为P=3个,所以V(G)=P+1=4。 3. 环形复杂度的用途 对测试难度的一种定量度量,也能对软件最终的可靠性给出某种预测。 实践表明,模块规模以V(G)≤10为宜。 根据程序中运算符和操作数的总数来度量程序复杂度。 N = N1 + N2 其中:N定义为程序长度; N1为程序中运算符出现的总次数; N2为操作数出现的总次数。 6.5.2 Halstead方法 Halstead给出预测程序长度的公式为: H = n1log2n1 + n2log2n2 其中:H定义为程序预测长度; n1为程序中使用的不同运算符(包括关键字)的个数; n2为程序中使用的不同操作数(变量和常量)的个数。 多次验证都表明,程序的预测长度H和实际程序长度N非常接近。 Halstead还给出了预测程序中包含错误的个数的公式: E = N log2(n1+n2) / 3000 第6章小结 ◇ 详细设计说明书 着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。 1. 这门课的老师:杨易扬 * 例子: P1 P2 UNTIL C2 P7 P4 P3 C def a.初始的PAD图 图6.6 PAD图例子 b.使用def符号细化处理框P2 P5 P2 P8 C1 UNTIL C2 P9 P10 P6 PAD图的优点: 1)使用表示结构化控制结构的PAD符号所设计出来的程序必然是结构化程序; 2)PAD图所描绘的程序结构十分清晰。 图中最左面的竖线是程序的主线,即第一层结构。随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数; 3)用PAD图表现程序,通俗易懂,程序从图中最左竖线上端的结点开始执行,自上而下,从左向右顺序执行,遍历所有结点; 4)容易将PAD图转换成高级语言源程序,这种转换可以用软件工具自动完成; 5)可用于表示程序逻辑,也可用于描绘数据结构; 6)PAD图的符号支持自顶向下、逐步求精的方法。 判定表由四部分组成: 左上部列出所有条件 左下部是所有可能做的动作 右上部表示各种条件组合 右下部是和每种条件组合相对应的动作 6.3.4 判定表 ? ? 1 2 3 4 5 6 7 8 9 国内乘客 ? ? T T T T F F F F 头等舱 ? ? T F T F T F T F 残疾乘客 ? ? F F T T F F T T 行李重量W≤30 ? T F F F F F F F F ? ? ? ? ? ? ? ? ? ? ? 免费 ? × ? ? ? ? ? ? ? ? (W-30)×2 ? ? ? ? × ? ? ? ? ? (W-30)×3 ? ? ? ? ? × ? ? ? ? (W-30)×4 ? ? × ? ? ? ? ? × ? (W-30)×6 ? ? ? × ? ? ? ? ? × (W-30)×8 ? ? ? ? ? ? × ? ? ? (W-30)×12 ? ? ? ? ? ? ? × ? ? 6.3.5 判定树 判定树是判定表的变种。 行李重量W30 行李重量W≤30 国内乘客 外国乘客 头等舱 其他舱 头等舱 其他舱 残疾乘客 正常乘客 残疾乘客 正常乘客 残疾乘客 正常乘客 残疾乘客 正常乘客 (W-30)×2 (W-30)×4 (W-30)×3 (W-30)×6 (W-30)×4 (W-30)×8 (W-30)×6 (W-30)×12 免费 图6.7 用判定树表示计算行李费的算法 行李费算法 PDL也称为伪码。 如:if I0 then 执行订单数据输入模块
文档评论(0)