软件测试风险级别确认与调整
基于风险的测试目前已经很热门,它解决了资源紧张,时间紧迫等客观因素给测试工作带来的麻烦。风险级别一般定义为风险可能性X风险严重程度。风险可能性是技术因素,而风险严重程度是产品发布后的社会因素,但这很不具体,在这篇文章第一部分我会深入来讨论如何建立风险级别。另外在测试国家与国际标准中都提出了风险级别要在测试过程中随时监控,随时调整,但是标准钟没有给出如何调整地方法,这篇文章第一部分第二部分我会给出一个我个人的一个算法。
确定风险级别
一般来讲,风险可能性受以下因素影响:
1. 复杂性
2. 时间压力
3. 高变更率
4. 技能水平
5. 地理分散程度
6. 早期缺乏质量保证手段
而风险严重度受以下因素影响:
1. 使用频率
2. 失效可视性
3. 商业的损失高变更率
4. 组织负面形象和损害
5. 社会损失和法律责任
关于可能性,我们仅考虑:使用频率,失效可视性;而关于严重度我们仅考虑:复杂性,时间压力和技术水平。
下图是分析出来的因素图表:
严重程度的影响因素 |
发生可能新的影响因素 |
总的风险级别 |
||||
功能模块 |
使用频率 |
失效的可视性 |
复杂性 |
时间压力 |
技能水平 |
|
权重 |
3 |
10 |
3 |
10 |
1 |
|
功能模块A |
3 |
4 |
5 |
2 |
4 |
|
功能模块B |
2 |
3 |
2 |
4 |
5 |
|
功能模块C |
4 |
2 |
4 |
3 |
2 |
|
功能模块D |
1 |
5 |
3 |
3 |
1 |
现在让我们来看看如何确定中的风险级别:
最大级别:
l 最大使用频率=5*使用频率权重;5*3=15
l 最大失效的可视性= 5*失效的可视性权重;5*10=50
l 最大复杂性= 5*复杂性权重;5*3=15
l 最大时间压力= 5*时间压力权重;5*10=50
l 最大技能水平= 5*技能水平权重;5*1=5
最大严重程度的影响因素与
l 最大严重程度的影响因素=最大使用频率+最大失效的可视性;15+50=65
l 最大发生可能性的影响因素=最大复杂性+最大时间压力+最大技能水平;15+50+5=70
计算公式:总的风险级别 = 总的严重程度*总的可能性;其中:
1. 总的严重程度 = ( (严重程度影响因素1的权重 * 评估的严重程度数值 + 严重程度影 响因素2的权重 * 评估的严重程度数值) ) /最大严重程度的影响因素*100%;
2. 总的可能性 = (可能性影响因素1的权重 * 评估的可能性数值 + 可能性影响因素2 的权重 * 评估的可能性数值 + 可能性影响因素3的权重 * 评估的可能性数值)/发生可能性的影响因素*100%
1%-20%:1
21%-40%:2
41%-60%:3
61%-80%:4
81%-100%:5
功能模块 |
严重程度计算公式 |
严重程度 |
发生可能性计算公式 |
发生可能性 |
总风险级别 |
功能模块A |
(3*3+4*10)/65*100%=75% |
3 |
(5*3+2*10+4*1)/70*100%=56% |
3 |
9 |
功能模块B |
(2*3+3*10)/65*100%=55% |
4 |
(2*3+4*10+5*1)/70*100%=73% |
4 |
16 |
功能模块C |
(4*3+2*10)/65*100%=49% |
3 |
(4*3+3*10+2*1)/70*100%=63% |
4 |
12 |
功能模块D |
(1*3+5*10)/65*100%=82% |
5 |
(3*3+3*10+1*1)/70*100%=57% |
3 |
15 |
所以
严重程度的影响因素 |
发生可能新的影响因素 |
总的风险级别 |
||||
功能模块 |
使用频率 |
失效的可视性 |
复杂性 |
时间压力 |
技能水平 |
|
权重 |
3 |
10 |
3 |
10 |
1 |
|
功能模块A |
3 |
4 |
5 |
2 |
4 |
9 |
功能模块B |
2 |
3 |
2 |
4 |
5 |
16 |
功能模块C |
4 |
2 |
4 |
3 |
2 |
12 |
功能模块D |
1 |
5 |
3 |
3 |
1 |
15 |
调整风险级别
原风险级别:
模块 |
可能性 |
严重度 |
风险级别 |
用户登录 |
3 |
6 |
18 |
用户注册 |
2 |
7 |
14 |
填写购物地址及支付信息 |
2 |
5 |
10 |
选择商品 |
3 |
4 |
12 |
放入购物车 |
3 |
5 |
15 |
结算 |
4 |
5 |
20 |
在线付款 |
4 |
6 |
24 |
目前阶段发现的缺陷如下:
模块 |
高级 |
中级 |
低级 |
用户登录 |
2 |
5 |
16 |
用户注册 |
3 |
6 |
31 |
填写购物地址及支付信息 |
2 |
7 |
22 |
选择商品 |
1 |
5 |
13 |
放入购物车 |
1 |
0 |
3 |
结算 |
2 |
4 |
12 |
在线付款 |
3 |
5 |
15 |
现在让我们来看看如何调整风险级别
Mi=高级错误数*5+中级错误数*3+低级错误数*1
a=(Mi/∑Mi)*100%
根据a 获得b
1%-20%:1
21%-40%:2
41%-60%:3
61%-80%:4
81%-100%:5
模块 |
高级 |
中级 |
低级 |
合计 |
% |
级别 |
用户登录 |
2*5=10 |
5*3=15 |
16*1=16 |
10+15+16=41 |
15.3% |
1 |
用户注册 |
3*5=15 |
6*3=18 |
31*1=31 |
15+18+31=54 |
20.15% |
2 |
填写购物地址及支付信息 |
2*5=10 |
7*3=21 |
22*1=22 |
10+21+22=53 |
19.78% |
1 |
选择商品 |
1*5=5 |
5*3=15 |
13*1=13 |
5+15+13=33 |
12.31% |
1 |
放入购物车 |
1*5=5 |
0*3=0 |
3*1=3 |
5+0+3=8 |
2.99% |
1 |
结算 |
2*5=10 |
4*3=12 |
12*1=12 |
10+12+12=34 |
12.69% |
1 |
在线付款 |
3*5=15 |
5*3=15 |
15*1=15 |
15+15+15=45 |
16.79% |
1 |
合计 |
268 |
e=(c+b)*d(c原可能性,d原严重性,e为现优先级)
由于缺陷只体现出可能性,而对严重度的影响不存在,所以不考虑对影响度的调整。
模块 |
可能性 |
严重度 |
风险级别 |
用户登录 |
(3+1)/2=2 |
5 |
10 |
用户注册 |
(2+2)/2=4 |
5 |
20 |
填写购物地址及支付信息 |
(2+1)/2=1.5 |
4 |
6 |
选择商品 |
(3+1)/2=2 |
3 |
6 |
放入购物车 |
(3+1)/2=2 |
3 |
6 |
结算 |
(4+1)/2=2.5 |
4 |
10 |
在线付款 |
(4+1)/2=2.5 |
4 |
10 |
比较前后结果
模块 |
可能性 |
严重度 |
风险级别(老) |
风险级别(新) |
用户登录 |
3 |
6 |
15 |
10 |
用户注册 |
2 |
7 |
10 |
20 |
填写购物地址及支付信息 |
2 |
5 |
8 |
6 |
选择商品 |
3 |
4 |
9 |
6 |
放入购物车 |
3 |
5 |
9 |
6 |
结算 |
4 |
5 |
16 |
10 |
在线付款 |
4 |
6 |
16 |
10 |
【投稿】【关闭窗口】【打印】