软件工程培训课件5 6章.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第五章 软件实现(编码测试) 5.1编码 1。跨越人机鸿沟 ①精干设计者+精干组织者+好方法,才能突破领域鸿沟取得正确设计。 ②正确的设计+精干程序员+好的编程语言才能突破人机鸿沟编写出好的计算机程序。 2。任务 ①选好程序员与程序语言,程序员应具备评审设计、熟悉编程与调试的能力;程序语言易于实现设计。 ②软件蓝图符合程序结构定理,V(G)小,算法简单。 ③程序质量标准:正确实现设计,可读,高效,可靠,方便。 3。编码风格 ①文体、手段、表达方式:易于理解;代码、数据结构化;语句表达简明直接结构好。 ②程序效率高,健壮可靠。 ③人机IO界面友好。 ④易于复用。 4。编码风格简例 ①给矩阵赋值的简明直接表达方式比较 Ⅰ不简明直接的表达 Ⅱ简明直接的表达 for (i = 1; i = n; i++) for ( i=1;i=n;i++) for ( j = 1; j=n; j++ ) for(j=1;j=n;j++) { P[i][1]=1; { P[i][j]=0; P[i][j]=(i/j)*(j/i); P[i][1]=1; } P[i][i]=1; //运行速度慢 }//运行速度快 ②比较数值的可读性与效率表达 //Ⅰ直接挑选 //Ⅱ 提示简化挑选 #include“stdio.h” #include“stdio.h” main() main() {scanf(“﹪d,﹪d,﹪d”,a,b,c); {int a,b,c,min; if(abac)printf(“smallest printf(“input integer a,b,c\n”); ﹪d”,a) scanf(“﹪d,﹪d,﹪d”,a,b,c); else if(babc)printf(“small if(ab)min=a est is ﹪d”,b) else min=b; else printf(“smallest ﹪d”,c); if(minc) min=c; } printf(“smallest﹪d”,min); } //Ⅲ复用挑选 main() #include“stdio.h” {int a,b,c,min; int smallest(int i,int j); scanf(“﹪d,﹪d,﹪d”,a,b,c); {if(ij)return(i) min=smallest(smallest(a,b),c); else return(j);} printf(“﹪d”,min);} 5。程序结构定理 ①结构化程序 结构化是工程化对软件结构的推动,要求程序由顺序、分支、循环成分构成,可理解、可测试、可修改、可维护;要求数据结构化规范化。 ②程序结构定理 检验软件设计无病性,然后优化算法(算法简单); 保证好形(一个输入多个出口)、适形(一个输入一个出口)、避免病型(无出口)。 ③病形伪码举例 Start//病形PC start//无病 L1:while P do A; while P do L2:B; A; if Q goto L1; B until Q; else goto L2 P+-;Q+-; enddo; enddo; stop stop 6.无距离跨越 设计者编码者集于一身,但必经过程控制、设计文档检验、程序检验,方能通过测试与验收。 5.2 软件测试 1.软件测试与程序测试的区别: 找错的范围不同 程序测试:找程序执行、语法、数据的错误,仅是编码的问题 软件测试:不仅要找程序的错误,还要找文档、数据的错误, 是全周期的。 S 系统分析 R 需求分析 D 设计 C 编码 自顶向下 U

文档评论(0)

大漠天下 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档