网站大量收购独家精品文档,联系QQ:2885784924

提高代码质量技巧.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 2003年8月14日,美国及加拿大部分地区发生了历史上最大的停电事故。当时的美国媒体曾怀疑“冲击波”病毒涉嫌造成大停电事故,一度引起“微软产品”以至IT信息安全的“信任恐慌”。请查看曾对此进行的相关专题报道:大停电,“冲击波”病毒之罪? 著名安全机构SecurityFocus的数据表明,2003年8月14日发生的美国及加拿大部分地区史上最大停电事故是由软件错误所导致。 SecurityFocus的数据表明,位于美国俄亥俄州的第一能源(FirstEnergy)公司下属的电力监测与控制管理系统“XA/21”出现软件错误,是北美大停电的罪魁祸首。根据第一能源公司发言人提供的数据,由于系统中重要的预警部分出现严重故障,负责预警服务的主服务器与备份服务器接连失控,使得错误没有得到及时通报和处理,最终多个重要设备出现故障导致大规模停电。 预警系统崩溃后没有接收到更多的警报更没法向外传播,操作员并不知道预警系统已经失效,他们发现了部分异常情况,但因为没有看到预警系统的警报,而不知道情况有多么严重,以致一个小时后才得到控制站的指示。但此时没完没了的故障干扰已经让操作员反应不过来,无法控制整个局面。正常情况下,出现错误的网络会立即与其他网络分隔开来,这样一来错误就会被固定在一个地方,但是同样由于预警系统失灵,操作员没有做出应有的反应,最终使得错误蔓延,一发而不可收拾。 /c/2004/02/25/108310.shtml * 微软操作系统中有很多的缺陷,这是大家都知道的,每隔一段时间就退出一个补丁。还有网络协议,网络通讯中的缺陷,导致了多少通信故障,网络瘫痪。从人类飞上太空、探测宇宙的历史上,我们也能发现很多由于软件缺陷导致的重大损失。 对于软件企业来说,软件质量的质量决定软件企业的市场命运。 * 简要叙述净室方法学。让学员了解有这些方法即可。 净室方法学:美国使用比较多。Cleanroom软件工程公司将软件开发看作一个有数学基础的工程过程。注重使用一些以理论为基础的技术,例如:用户功能的盒式结构规格和系统对象体系结构、功能设计和正确性验证、统计性使用测试。强调开发团队对项目进行理性控制的重要性。过程的基础是(设计和代码)的正确性证明以及通过统计性测试的正式质量验收。比较有争议的是使用正确性的团队验证代替单个单元测试。有了代码,进行统计性测试。这种测试是基于顾客的使用方式 。设计测试用例主要是针对顾客频繁使用的功能。看来,那些看来对用户导致失效的错误可能被首先发现。 英国和欧洲使用维也纳开发方法和Z 记号系统。 缺陷预防过程:是一个持续改进开发过程的过程。主要在日本使用。 基于三个简单步骤: 分析已有缺陷或错误,以跟踪根原因; 建议预防行动,以消除缺陷的根原因; 执行预防行动。 * CMM 和ISO质量标准的内容,将在以后的其它课程中学习。在此也只是简单的提出来即可。 过程成熟度模型是卡耐基-梅隆大学的SEI为软件开发工作建立的一个过程成熟度框架。(Capability maturity model,CMM)。框架包括成熟度的5个级别。 ISO9000是一组质量保证管理体系的标准和指南,代表了一组质量标准。其中9000-3是应用于软件开发、供应和维护的。 * 简单描述代码在软件质量中的作用即可。 * 可以先提问学员。等学员回答完后,给出幻灯片中的列出的各项。 * 可根据制约程序员编写高质量代码的因素进行分析,解决这些影响因素。主要:进行培训。 包括对开发人员进行技术培训、业务培训、开发工具和开发语言的等培训。 引入审查和监督机制。 例如:制定代码编写规范;测试人员的介入,进行白盒测试来提高代码编写的质量。 当然还有很多的其它审查和监督的方法。 * 这些是一些基本的方法,现在的目前的概念还不统一,目前我们在这里引用概念。主要是讲解方法。 * 也可以称为代码Review。 由程序员自己检查自己编写的程序。程序员在程序通过编译之后,进行单元测试之前,对源代码进行分析,检验,并补充相关文档,目的是发现程序的错误。需要根据《编码规范》编写或调整自己的代码符合编码规范。 需要解释:是由程序员自己来做桌前检查; 时间是:程序通过编译之后、进入单元测试之前; 可能要做的工作:需要补充文档; 关键是:对代码进行分析,依据编码规范检查源代码。 * 同行评审(代码走查(Walkthrough)、代码Review、人工走查、代码审查) 同行评审是由若干程序员和测试员、设计人员组成一个会审小组,通过讲解、阅读、讨论和争议,对程序进行静态分析的过程。 常常是为了发现代码中存在的问题,或促进开发人员之间的交流,使公司内编写的代码风格一致。 参与人员:若干开发人员和测试人员、设计人员 形式:会议 方式:阅读、讨论和争议、讲解 作用:发现源代码中的缺陷 好处:促进开发

文档评论(0)

4477769 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档