软件研发行业参考统计分析数据

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件研发行业参考统计分析数据

1.CMM汇总

1.1.不同CMM等级软件生命周期各阶段缺陷发现分布示意图

不同CMM等级软件生命周期各阶段缺陷分布示意图

1.2.CMM级别与Bug率

本来像软件这样的逻辑产品,开发过程中出现缺陷(BUG)不可避免,但随着CMM 级别的提高,软件可靠性将有数量级的改进。

目前业界通常的标准是:

每千行源代码所含的BUG数,CMM1级为11.95个,

CMM2级为5.52个,

CMM3级为2.39个,

CMM4级为0.92个,

CMM5级则只有0.32个。

也就是说CMM5级的可靠性比CMM1提高近40倍。

在CMM1,大多数的BUG通常都会在测试阶段出现,随着CMM级别的提高,BUG 出现的高峰也随之提前,从而使软件开发的进度得到可靠的保证。在可靠性提高的同时,CMM5的软件开发周期是CMM1的36%,而生产成本是CMM1的19%,平均每个软件开发人员的生产率会提高4倍。

1.3.交付后缺陷分布饼图

1.4.不同阶段消除一个缺陷的相对成本

1.5.经验:评审、测试与客户发现缺陷比例

1.6.识别缺陷的成效

测试的成效:最多识别软件所有缺陷中30-35%的缺陷

评审的成效:最多识别软件所有缺陷中70-75%的缺陷

1.7.识别缺陷的成本

测试的成本:识别一个重要缺陷平均花费15-25小时

评审的成本:需求阶段识别一个重要缺陷平均花费2-3小时;

设计阶段识别一个重要缺陷平均花费3-4小时;

代码评审阶段识别一个重要缺陷3-5小时;

测试计划评审识别一个重要缺陷3-5小时

1.8.解决缺陷的成本

测试的成本:消除一个重要缺陷平均花费30-80小时(包括识别缺陷时间)

在开发后期才能识别缺陷,成本较高

评审的成本:需求及设计阶段消除一个重要缺陷5-10小时;

代码评审阶段消除一个重要缺陷5-15小时

更倾向于在开发前期识别缺陷,成本较低

1.9.投入回报比较

(1)航天飞机搭乘项目:在设计或代码评审时消除一个缺陷的成本为1美元,在系统测试时为13美元,交付使用后为92美元(Paulk etal,1995)。即13~92 : 1

(2)电信公司审查发现和纠正一个缺陷的平均费用为200美元,客户验收测试发现的缺陷平均花费4200美元(Boehm and Basili 2001)。即21 : 1

某研究表明,客户使用过程中发现、纠正与需求相关的缺陷的费用是比需求开发阶段发现和纠正同样缺陷的费用的68~110倍(Boehm 1981;Grady 1999)。即68~110 : 1

(3)印度Infosys公司经验表明:在代码审查上多花费一天,这个产品就有期望在后期修改缺陷节省3-6天。即3~6 : 1

1.10.软件过程审查的质量目标

质量目标目标下限上限SRS文档Review缺陷发现密度(个/页):0.800.50 1.10 HLD文档Review缺陷发现密度(个/页):0.70 0.50 0.90 LLD文档Review缺陷发现密度(个/页):0.43 0.22 0.64

代码检视缺陷发现密度(个/KLOC):10.62 7.43 13.81

单元测试计划Review缺陷发现密度(个/页):0.43 0.22 0.64

集成测试计划Review缺陷发现密度(个/页):0.70 0.50 0.90

系统测试计划Review缺陷发现密度(个/页):0.80 0.50 1.10 1.11.印度某CMMI5公司PCB

1.1

2.软件过程审查产生的效果

1)产出量:单位开发人员的产出量由950行代码/人月(全流程)增长到1320行代码/人月(全流程),增长量为38.9%。关键原因在于大在减少了项目后期返工的工作量。考虑由于项目熟悉和学习曲线等的原因,实际的产出增长量应该超过20%。

2)产品质量(遗留缺陷密度):我们从软件系统的遗留缺陷率来分析系统的质量情况。在半年的维护时间内,第一期代码行为4万行,严重缺陷有5个,一般缺陷有32个,严重缺陷发现密度为0.125个缺陷/千行代码,总遗留缺陷发现密度为0.925个缺陷/千行代码;第二期代码行数为5万行,严重缺陷有1个(属于客户需求问题引发的设计缺陷),一般缺陷有15个,严重缺陷发现密度为0.02个缺陷/千行代码,总遗留缺陷发现密度为0.32个缺陷/千行代码。因此严重缺陷发现密度改进了84%,一般缺陷发现密度改进了65.4%。

3)客户满意度:第一期客户严重不满意,称我们在做玩具,满意度只有22%;第二期客户满意度大幅上升,称我们是专业人士,非常敬业,为他们所钦佩,满意度达到了91%。因此满意度提高了314%。

1.13.评审和动态测试互补效果

1.14.不同阶段缺陷修复的成本

阶段缺陷修复成本

用户需求和分析$1

概要设计$2

详细设计$5

编码和实现$10

组件测试$15

集成测试$22

系统测试$50

用户验收和使用$100+

2.代码审查

2.1.发现缺陷的效果

2.2.代码审查建议

3.测试

3.1.测试重要性

3.2.NASA经验分享

相关文档
最新文档