一、缺陷度量
缺陷的度量方法比较多,其中常用的度量方法有:缺陷密度(软件缺陷在规模上的分布)、缺陷率(缺陷在时间上的分布)、整体缺陷清除率、阶段性缺陷清除率、缺陷趋势、预期缺陷发现率等。
1.缺陷密度=已知缺陷的数量/产品规模。产品规模的度量单位可以是文档页、代码行、功能点。
2.缺陷率的通用概念是一定时间范围内的缺陷数与错误几率的比值。
3.整体缺陷清除率=已发现的缺陷/潜在的缺陷。由于潜在的缺陷不容易估算,所以将潜在的缺陷设置为已发现的缺陷+以后发现的缺陷。
先引入几个变量。F为描述软件规模用的功能点;D1为在软件开发过程中发现的所有缺陷数;D2为软件发布后发现的缺陷数;D为总的缺陷数。因此D=D1+D2。
对于应用软件项目,从不同的角度估算软件质量:
质量=D2/F
缺陷注入率=D/F
整体缺陷清除率=D1/D
4.缺陷趋势是在一定周期时间或一定阶段内,产生/发现缺陷的动向或规律,是缺陷率按时间或按阶段增长/下载的动态分布。
5.缺陷发现率是描述特定时间段内发现缺陷数的一种度量指标。计算测试人员各自发现的缺陷数总和除以各自花费的测试时间总和。
缺陷发现率=∑提交缺陷个数/∑执行测试的有效时间(小时)
缺陷发现率可以当做帮助自己判断测试是否可以结束、预测产品发布日期的重要度量。如果缺陷发现率降到规定水平一下,通常都会做好产品发布的准备。
二、缺陷分析
缺陷分析是将软件开发各个阶段产生的缺陷信息进行分类和汇总统计,计算分析指标,编写分析报告的活动。缺陷分析也可以用来评估当前软件可靠性,并且预测软件产品的可靠性变化。另外通过缺陷分析达到缺陷预防的目标,是缺陷管理的核心任务之一。
缺陷分析的步骤:
1.记录缺陷。记录缺陷不应仅满足于记录缺陷的表面症状。而是要试图发现缺陷的根本原因。在测试的时候不应将产品看作一个黑盒,而应向开发人员那样了解产品的内在,包括深入源代码,理解产品的设计和实现。
2.对缺陷进行分类,找出那些关键的缺陷类型,进一步分析缺陷产生的根源,针对性制定改进措施。缺陷分析非常关键的一步就是寻找一个预防类似缺陷再次发生的方法。
3.缺陷预防分析,它是整个缺陷分析过程的核心。缺陷分析提供了两个非常重要的参数,一个是缺陷数量的趋势,另一个是缺陷修复的趋势。缺陷趋势就是将每个月新生成的缺陷、每月被解决的缺陷数和每月遗留的缺陷绘制成缺陷趋势图。
4.最后一步就是编写缺陷分析报告,绘制缺陷分析图。
缺陷分钟中,常用的主要缺陷参数有4个:1状态——缺陷的当前状态;2优先级;3严重性;4起源——熬制缺陷的起源故障及其位置或排除该缺陷需要修复的构建。
三、缺件缺陷统计
1.软件功能模块的缺陷统计
2.软件严重程度统计
3.缺陷类型统计(例如:接口、功能、架构、逻辑/算法、需求文档、其他)
4.缺陷趋势图