如何提高软件质量

如何提高软件质量

ID:21471752

大小:1.18 MB

页数:55页

时间:2018-10-18

如何提高软件质量_第1页
如何提高软件质量_第2页
如何提高软件质量_第3页
如何提高软件质量_第4页
如何提高软件质量_第5页
资源描述:

《如何提高软件质量》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、如何提高我们的软件质量研发中心软件室-王丁2008-6主题什么是软件质量?软件质量的过去和将来!我们遇到了什么?或者即将遇到什么?怎么办?参考资料什么是质量?质量具有三个维度:•符合目标。目标是客户所定义的,符合目标即判断我们是不是在做需要做的事情。•符合需求。即产品是不是在做让它做的事情。•符合实际需求。实际的需求包括用户明确说明的和隐含的需求。ISO关于质量的定义表示如下:“一个实体(产品或服务)的所有特性,基于这些特性可以满足明显的或隐含的需要。”什么是软件质量?外部用户要求:正确,高效,健壮,易用和可

2、靠内部维护人员要求:可维护(代码易读,易读,易Debug,注释清晰,容易扩展)内部测试人员要求:可测试,易用,易理解企业产品化要求:可扩展,可移植,可配置,灵活,重用性高,模块和组件化代码大全怎么说因此《代码大全》将软件质量特征分为内部质量特征和外部质量特征:外部质量特征包括:+正确性。整个系统受说明、设计和实现的错误影响程度。+可用性。用户学会和使用系统的难易程度。+效率。对系统资源的最小利用,包括存储和执行时间。+可靠性。在一定条件下执行特定功能的能力。+完整性。防止非法或不适当地访问。完整性思想包括:限

3、制非法用户访问,同时确保证数据恰当访问;并行数据表进行并行修改;数据段仅含有有效数据等等。+适应性。系统在应用或其它环境下不作修改就能使用的能力。+精确性。系统不受错误影响的程度,尤其是数据输出方面。精确性和正确性是不同的。精确性是对系统完成其工作性能良好的衡量,而不是它设计得是否正确。+坚固性。系统对无效输入或压力环境中能继续执行其功能的能力。代码大全怎么说内部质量特征包括: +可维护性。修改一个软件系统,提高其性能或修正其错误的能力。+灵活性。修改系统使其能适应于不同的用途或环境的能力,而不必对系统进行特

4、定的设计。+可移植性。能修改所设计的某一系统使其能在其它环境下运行的能力。+可重用性。能将系统的一部分用于其它系统的难易程度。+可读性。能读懂或理解系统源代码的能力,尤其是在细节说明这一级上。+可测试性。对整个系统进行单元或系统测试以证实其满足所有需求性能的测试难易程度。+可理解性。能从整个系统水平或细节说明这一级上理解整个系统的难易程度。可理解性要比可读性从更一般的水平上讨论系统的紧密性。我们把影响软件质量的因素分成三组,分别反映用户在使用软件产品时的三种不同倾向或观点。这三种倾向是:产品运行、产品修改和产

5、品转移。信息系统作为一个产品,也可以参照这三种倾向来定义。我们需要注意的几个数据1、在项目发布后发现和修复Bug的成本是需求和设计阶段所需的一百倍!2、80%可避免的重复劳动源自于20%的缺陷,其中两大主要来源包括草率的需求定制和象征性的案例设计和开发。3、大约80%的缺陷来自20%的模块,而约半数的模块是几乎没有缺陷。4、90%的软件的停工期最多来自于10%的缺陷。总结一下上面四条原则说明了两个问题,一是错误越早发现成本越低,而且大部分的错误都是在软件开发的前面阶段引入的。二是大部分的错误都集中在少数的模块

6、。缺陷代价曲线软件质量的过去20世纪60年代中期,美国的首次金星探测计划,因为在FORTRAN语言程序的DO语句中漏掉一个逗号,惨遭失败。1996年,欧洲航天局首次发射阿丽亚娜5号火箭失败,其直接原因是火箭控制系统的软件故障,导致直接经济损失5亿美元,还使耗资80亿美元的开发计划延迟了三年。1986年3月到1987年1月,由加拿大原子能有限公司生产的Therac25放射治疗机造成两人死亡、数人受伤。软件质量的过去1992年,法国伦教由于救护派遗系统全部崩溃,导致多名病人因为抢救不及时而失去生命。1991年海湾

7、战争期间,美国爱国者导弹由于软件计时系统累计误差造成拦截失败,造成人员无辜伤亡。1990年美国电话系统中新投入使用的软件发生失效,导致主千线远程网大规模崩溃,给运营商造成了重大的经济损失。1991年,由于一系列局域电话网因软件错误而中断,造成了数以千计依靠电讯公司运营业务的公司遭受巨额的资金损失。软硬件产品的不同点特征软件硬件存在形式虚拟、动态固化、稳定客户需求不确定性相对清楚度量性非常困难正常生产过程逻辑性强流水线、工序逻辑关系复杂清楚接口复杂多数简单、适中维护复杂、新的需求、可以不断打补丁多数简单、适中、

8、没有新的需求软硬件开发过程的比较软件硬件54-56%质量缺陷来自需求不清楚需求分析《=》调研分析质量控制的主要阶段之一25%质量缺陷来自设计和编程设计、编程《=》设计阶段质量控制的主要阶段之一测试《=》设计审查发布《=》设计完成这里不是软件质量管理的主要阶段软件拷贝《=》制造、检验生产的主要过程,质量控制的重点不仅支持原有功能,解决以前就存在的问题,而且增加新特性、加强新功能维护《=》维修支持原有功

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。