- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第章 实现
第7章 实现 7.1 编码(自学) 7.2 软件测试基础 7.3 单元测试 7.4 集成测试 7.5 确认测试 7.6 白盒测试技术 7.7 黑盒测试技术 7.8 调试 7.9 软件可靠性 本章基本概念 实现:软件的编码和测试称为软件的实现。 编码:把软件设计结果翻译成某种程序设计语言书写的程序。编码是对设计结果进一步细化的过程。 编码要求:合理选择程序设计语言,按照良好的编码风格,编写结构清晰、易读易懂、运行高效的程序。同时,还要提高程序的可靠性、可测试性和可维护性。 测试:测试是通过一定的检测技术和方法运行程序而发现程序错误的过程。 测试的必要性和重要性: 软件开发错误在所难免,检测和发现错误是必须的; 错误推迟到生产运行过程中暴露出来,维护代价更高,而且往往会造成严重的后果。 测试周期:在软件生命周期中横跨两个阶段:编码(单元)测试阶段和综合测试阶段。 单元测试:在编写出每个模块代码之后就对它做必要的测试,由模块编写者来测试,编码和单元测试属于软件生命周期的同一个阶段。 综合测试:单元测试之后,对软件系统进行的集成、验收等测试。综合测试属于软件生命周期中一个独立的阶段,通常由第三方完成。 测试任务:软件测试工作是一项非常艰巨的任务。占软件开发总工作量的40%以上,在极端情况,可能达到其它开发阶段总成本的3倍到5倍。 调试:对测试所发现的错误进行诊断和改正的过程称为调试。调试是测试阶段最困难的工作。 7.1 编码(学生演讲) 7.1.1 选择程序设计语言 程序设计语言是实现编码的基本工具,会影响人的思维和解题方式、人和计算机通信方式,阅读和理解程序的难易程度等。因此,编码前需选择一种适当的程序设计语言。 1. 尽量选择高级语言:优点是高效(程序的生产力,比汇编语言要高出几倍);表达能力强(对数据、对象、行为等表达能力);高级语言的符号和概念更符合人的习惯;实现的编码容易阅读理解、容易测试、容易调试和容易维护。 2. 有限制的选择汇编语言:有一些特殊情况,需要选择汇编语言。如对程序执行时间和使用的空间都有很严格限制;体系结构特殊的微处理机,以致在这类机器上通常不能实现高级语言编译程序等。 语言选择的一些实际要求: 1) 系统用户的要求:如果所开发的系统由用户负责维护,用户通常要求用他们熟悉的语言书写程序。 2) 可以使用的编译程序:运行目标系统的环境中可以提供的编译程序往往限制了可以选用的语言的范围。 3) 可以得到的软件工具:如果某种语言有支持程序开发的软件工具可以利用,则目标系统的实现和验证都变得比较容易。 4) 工程规模:如果工程规模很庞大,现有的语言又不完全适用,那么设计并实现一种供这个工程项目专用的程序设计语言,可能是一个正确的选择。 5) 程序员的知识:虽然对于有经验的程序员来说,学习一种新语言并不困难,但是要完全掌握一种新语言却需要实践。如果和其他标准不矛盾,那么应该选择一种已经为程序员所熟悉的语言。 6) 软件可移植性要求:如果目标系统将在几台不同的计算机上运行,或者预期的使用寿命很长,那么选择一种标准化程度高、程序可移植性好的语言就是很重要的。 7) 软件的应用领域:根据目标系统的实际应用要求,选择合适的语言。 7.1.2 编码风格 源程序代码的逻辑简明清晰、易读易懂是好程序的一个重要标准,为了做到这一点,应该遵循下述规则。 1. 程序内部的文档 所谓程序内部文档是指在程序内部对程序组成部分进行标识、说明的文字语言,包括恰当的标识符、适当的注解和程序的视觉组织等等。 标识符:选取含义鲜明的名字,使它能正确地标识程序对象所代表的实体,这对于帮助阅读者理解程序是很重要的。如果使用缩写,那么缩写规则应该一致,并且应该给每个名字加注解。 注解/注释:注解是程序员和程序读者通信的重要手段,正确的注解非常有助于对程序的理解。注解位置与要求: 模块开始处:通常在每个模块开始处有一段序言性的注解,简要描述模块的功能、主要算法、接口特点、重要数据以及开发简史。 程序之中:插在程序中间与一段程序代码有关的注解,主要解释包含这段代码的必要性。 程序层次结构:程序清单的布局对于程序的可读性也有很大影响,应该利用适当的阶梯形式使程序的层次结构清晰明显。 2. 数据说明 数据结构的组织和复杂程度在设计期间已经确定,然而数据说明的风格却是在写程序时确定的。为了使数据更容易理解和维护,有一下比较简单的原则应该遵循: 数据说明的次序应该标准化:有次序就容易查阅,因此能够加速测试、调试和维护的过程。 当多个变量名在一个语句中说明时,应该按字母顺序排列这些变量。 如果设计时使用了一个复杂的数据结构,则应该用注解说明用程序设计语言实现这个数据结构的方法和特点。 3. 语句构造 设计期间确定了软件的逻辑结构,然
文档评论(0)