软件工程教学课件ch7.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 实现 7.1 编码 7.2 软件测试基础 7.3 单元测试 7.4 集成测试 7.5 确认测试 7.6 白盒测试技术 7.7 黑盒测试技术 7.8 调试 7.9 软件可靠性 实现:编码和测试的统称。 编码:把软件设计结果翻译成用某种程序设计语言书写的程序。 程序的质量主要取决于: 软件设计的质量。 所选用的程序设计语言的特点及编码风格也将对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。 软件测试也是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。 7.1 编码 7.1.1 选择程序设计语言 7.1.2 编码风格 7.1 编码 7.1.1 选择程序设计语言 编码之前的一项重要工作: 就是选择一种适当的程序设计语言。 高级语言 用高级语言写的程序容易阅读,容易测试,容易调试,容易维护。 7.1.1 选择程序设计语言 选用高级语言的实用标准: (1) 系统用户的要求。选择用户熟悉的语言。 (2) 可以使用的编译程序。运行目标系统的环境中可提供的编译程序往往限制了所选用语言的范围。 (3) 可以得到的软件工具。某种语言是否有支持程序开发的软件工具可以利用。 (4) 工程规模。 (5) 程序员的知识。应该选择一种已经为程序员所熟悉的语言。 (6) 软件可移植性要求。 (7) 软件的应用领域。 7.1.2 编码风格 好程序的标准: 代码的逻辑:简明清晰、易读易懂。 故编码应该遵循下述规则: 程序内部的文档 数据说明 语句构造 输入输出 效率 程序内部的文档 程序内部的文档包括:恰当的标识符、适当的注解 和程序的视觉组织等。 含义鲜明的名字 正确的注解 缩写规则一致 程序清单的布局对于程序的可读性也有很大影 响,应该利用适当的阶梯形式使程序的层次结构 清晰明显。 2. 数据说明 数据说明的次序应该标准化。 有次序就容易查阅,因此能够加速测试、调试和维护的过程。 先按类型 再按字母 复杂的数据结构,应该用注解说明用程序设计语言实现这个数据结构的方法和特点。 3. 语句构造 简单而直接 不要为了节省空间而把多个语句写在同一行; 尽量避免使用复杂的条件; 尽量减少使用“非”条件; 避免大量使用循环嵌套和条件嵌套; 利用括号使逻辑表达式或算术表达式的运算次序清晰直观。 4. 输入输出 对所有输入数据都进行检验; 检查输入项重要组合的合法性; 保持输入格式简单; 使用数据结束标记,不要要求用户指定数据的数目; 明确提示交互式输入的请求,详细说明可用的选择或边界数值; 当程序设计语言对格式有严格要求时,应保持输入格式一致; 设计良好的输出报表; 给所有输出数据加标志。 5. 效率 主要讨论程序运行时间和输入输出对效率的影响。 (1) 输入输出的效率 简单清晰是提高人机通讯效率的关键。 如输入输出很难被人理解,将降低效率。 (2) 程序运行时间 影响源程序的效率的因素: 算法的效率; 写程序的风格。(对程序的执行速度和存储器要求产生影响) 因此写程序时可应用下述规则: 写程序时可应用下述规则: 写程序之前先简化算术的和逻辑的表达式; 仔细研究嵌套的循环,以确定是否有语句可以从内层往外移; 尽量避免使用多维数组; 尽量避免使用指针和复杂的表; 使用执行时间短的算术运算; 不要混合使用不同的数据类型; 尽量使用整数运算和布尔表达式。 为什么要有编码规范 编码规范对于程序员而言尤为重要,原因: 一个软件的生命周期中,80%的花费在于维护; 几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护; 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码。 为了执行规范,每个软件开发人员必须一致遵守编码规范。 7.2 软件测试基础 7.2.1 软件测试的目标 G.Myers给出了关于测试的一些规则,这些规则也可以看作是测试的目标或定义。 (1) 测试是为了发现程序中的错误而执行程序的过程; (2) 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案; (3) 成功的测试是发现了至今为止尚未发现的错误的测试。 测试是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。 7.2.1 软件测试的目标 测试的正确定义是:“为了发现程序中的错误而执行程序的过程”。 错误的认识: “测试是为了表明程序是正确的”, “成功的测试是没有发现错误的测试” 。 正确认识测试的目标是十分重要的,测试目标决定了测试方案的设计。 如果为了表明程序的正确,就会设计一些不易暴露错误的测试

文档评论(0)

***** + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8135026137000003

1亿VIP精品文档

相关文档