缺陷清除率=发现的BUG数 / 应该发现的BUG数
请见我曾发过的《度量分析计划》中与缺陷清除率有关的信息说明。
设开发过程有m个阶段,n个检查点,对第j个检查点发现的阶段i引入的缺陷个数记作Dij,则有如下缺陷清除矩阵:
缺陷数
缺陷注入
阶段1
阶段2
阶段3
阶段4
……
阶段i
……
阶段m
总计
V
&
V
活动
检查1
D11
D*1
检查2
D12
D22
D*2
检查3
D13
D23
D33
D*3
检查4
D14
D24
D34
D41
D*4
……
……
……
……
……
……
……
检查j
D1j
D2j
D3j
D4j
……
Dij
D*j
……
……
……
……
……
……
……
……
……
检查n
D1n
D2n
D3n
D4n
……
Din
……
Dmn
D*n
合计
D1*
D2*
D3*
D4*
……
Di*
……
Dm*
D
在上述矩阵中阶段i总的注入缺陷数为Di*,设检查点j为该阶段的检查点,总的基础缺陷数为D*j,则阶段i的缺陷清除率为:
i
j-1
DREi=
∑
Dk*
-
∑
D*k
k=1
k=1
阶段i的缺陷注入率为:
DIEi=Di*/D*100%
例如:有如下缺陷清除率矩阵:
缺陷数
缺陷注入
需求
概要设计
详细设计
编码
单元测试
部件测试
系统测试
维护
总计
V
&
V
活动
需求分析和评审
0
0
概要设计评审
49
681
730
详细设计评审
6
42
681
729
代码审查
12
28
114
941
1095
单元测试
21
43
43
223
2
332
部件测试
20
41
61
261
0
4
387
系统测试
6
8
24
72
0
0
1
111
维护
8
16
16
40
0
0
0
1
81
合计
122
859
939
1537
2
4
1
1
3465
则详细设计阶段的缺陷清除率为:729/((122+859+939)-(730+0))=61.3%
详细设计阶段的缺陷注入率为:939/3465=27.1%
依据AIQCS中现有产品的缺陷清除率数据求缺陷引入率和缺陷清除率的平均值,再根据实际情况对这些数据进行合理修订,建立缺陷引入率和缺陷清除率的基线。测试活动作为V&V活动中的一个稳定的受控过程,将测试缺陷密度作为基线。以上三类数据作为建立缺陷清除率模型的输入。
模型有如下关系:
DRE模型
识别阶段
A入口处的缺陷密度
B本阶段引入的缺陷密度
C缺陷引入率
小计(A+B)
D缺陷清除率
本阶段清除的缺陷密度
需求
0.00
0.53
10.00%
0.53
81.54%
0.43
设计
0.10
1.58
30.00%
1.67
49.85%
0.83
实现
0.84
2.89
55.00%
3.73
27.93%
1.04
测试
2.69
0.26
5%
2.95
80.00%
2.36
维护
0.59
0.00
0%
0.59
100.00%
0.59
总计
5.25
100.00%
5.25
本阶段清除的缺陷密度=(A+B)*D=(入口处的缺陷密度+本阶段引入的缺陷密度)×本阶段
的缺陷清除率
下阶段入口处的缺陷密度=上阶段总缺陷密度-上阶段清除的缺陷密度
在缺陷引入率和清除率一定的情况下,通过调整总缺陷密度,使模型中的测试缺陷数达到组织基线。即得到了满足上述三个输入条件的DRM模型。
以上推导过程可以简化为以下矩阵:
识别阶段
B本阶段引入的缺陷密度
C缺陷引入率
D缺陷清除率
本阶段清除的缺陷密度
需求
0.53
10.00%
81.54%
0.43
设计
1.58
30.00%
49.85%
0.83
实现
2.89
55.00%
27.93%
1.04
测试
0.26
5%
80.00%
2.36
维护
0.00
0%
100.00%
0.59
总计
5.25
5.25
本阶段清除的缺陷密度=本阶段清除率×(截至到本阶段的所有引入的缺陷密度和-截至上
阶段清除的缺陷密度和)
缺陷清除率模型在组织中应用于缺陷的预测和跟踪。对各V&V活动的缺陷识别能力进行估计,作为质量目标,指导项目实施。
具体的应用过程如下:
在项目计划阶段,项目经理根据项目的特点,从《组织PCB》中,选择一组适合本项目的基线数据。缺省使用组织提供的《基于DRM的缺陷预测与跟踪表-模板》中的数据。
在“缺陷预测与跟踪”表单中填入计划书中估计的“代码规模”,系统自动按照清除率矩阵模型计算出各阶段预计的缺陷数。
在后面的每个里程碑结束点,即需求评审之后,设计评审之后,测试开始之前,产品发布,对预测的缺陷进行跟踪,并根据实际情况,修订后续过程的缺陷预测数据和调整V&V活动。
以需求评审之后的缺陷跟踪与预测活动为例,在需求评审之后,将实际的识别的缺陷数填入“缺陷预测与跟踪”表单的“需求评审后的预测”表中,系统自动计算出本阶段的实际清除率和清除的缺陷密度,以及重新修订的后阶段缺陷密度和缺陷数。对每阶段调整的方式和改进行动,记录在“需求评审后的预测”表的“结果分析及解决方案”中。
通过调整模型中本阶段和下阶段的“缺陷清除率”,达到满足发布的质量目标的要求。调整原则如下:
1、 如本阶段的缺陷清除率超出了控制范围,但并位造成维护阶段的缺陷密度偏离中心线,可以不做任何调整,直接使用模型给出的后续阶段缺陷密度估算结果
2、 如本阶段的缺陷清除率超出了控制范围,造成维护阶段的缺陷密度达不到基线中心线,调整下阶段的清除率,直到维护阶段的缺陷密度达到基线中心线。此时得到后续阶段的缺陷预测数据
3、如调整过程中,使下阶段的清除率超出了控制范围,则需要退后到本阶段,通过加强本阶段的V&V活动,发现更多的缺陷,而不能进入到下阶段。如:
步骤1:
步骤2:
步骤3: