好钢用在刀刃上:二八原则在软件测试中的应用

2010-02-21  王恩建 

二八原则始于Pareto原则,Pareto原则中文翻译为帕累托原则,由意大利经济学家Villefredo Pareto提出,他研究发现:社会财富的80%是掌握在20%的人手中,而余下的80%的人只占有20%的财富。延伸一下,就是“至关重要的少数,微不足道的多数”。二八原则告诉我们,做事要抓重点。企业的资源有限,人的精力有限,都需要抓重点,让收益最大化。最终的目的就是达到“好钢用在刀刃上”。如何才能把好钢用在刀刃上呢,而不是误用到刀背上。是在测试工作中,帕累托图可以非常直观的帮助你找到重点,就是帮你分清楚哪里是刀刃,哪里是刀背。



上图所示图例,告诉我们左边三个模块是我们应该重点关注的模块。在实际应用中,那可以针对三个模块倾斜更多的资源。忘了哪位牛人说过“发现缺陷越多的地方其实还有更多的缺陷”,其实也是告诉我们同一个道理。

在上图中,左边Y轴表示缺陷数目,右边Y轴便是缺陷所占缺陷总数的百分比。曲线表示各个模块所占缺陷的累计百分比。X轴不一定是功能模块,也可是其他维度,例如缺陷类型、严重等级、人员等。

我们看到的资料图片举例大都在80%这个点,所以很好区分。但在实践的过程中,缺陷的所占百分比不会恰恰都在80%,有的人把低于80%的模块划为重点,有的人则把超出80%最近的那个模块也划分为重点。在这点上,还请有经验的朋友指点指点。

在实际的应用中远没有课本和老师教的那么简单,在这里与大家简单分享一下我的心得和遇到的问题。

907°/8943 人阅读/13 条评论 发表评论

菜菜  2010-02-21

老王也对缺陷分析颇有研究,希望以后能多多交流、学习


金鑫  2010-02-21

好文,最近在研究是否可以使用“马尔科夫链”是否能对缺陷趋势与分布进行预测


吴卓扬  2010-02-22

对“八零二零”原则阐述的很好,不过你依据某个模块缺陷占有的比例接近或者超过80%来确定测试重点貌似太按部就班了吧,该重点也许并非是这个项目所有功能中的重点或者是核心,说不定会因小失大~~个人理解


田庆希  2010-02-22

“二八原则”的定律很好理解,但是在测试的过程中,我觉得不是很好掌握


王进  2010-02-22

“发现缺陷越多的地方其实还有更多的缺陷”,有道理。


杜琳  2010-02-22

学习了,图很漂亮。


王恩建  2010-02-22

菜菜: 老王也对缺陷分析颇有研究,希望以后能多多交流、学习
我经常不务正业,哈哈


王恩建  2010-02-22

吴卓扬: 对“八零二零”原则阐述的很好,不过你依据某个模块缺陷占有的比例接近或者超过80%来确定测试重点貌似太按部就班了吧,该重点也许并非是这个项目所有功能中的重点或
是这样的,是有可能划分出在业务上不重要的模块。另外,单纯从缺陷的数目上来计算也有缺陷,例如一个模块发现10个严重程度很低的bug,另外一个模块发现3个严重程度很高的bug。


吴帆  2010-03-02

“二八原则”的定律很好理解,但是在测试的过程中,我觉得不是很好掌握。
我在测试过程中都是统统先做一下功能测试,如果哪个模块出现的bug比较多(这个依据库里的bug录入数量和需求里描述的功能点多少)来确定下一轮测试时哪个模块投入更多的精力来测,不知道这么做是不是正确,也希望抛砖引玉。大家多多指正。


王恩建  2010-03-02

吴帆: “二八原则”的定律很好理解,但是在测试的过程中,我觉得不是很好掌握。
我在测试过程中都是统统先做一下功能测试,如果哪个模块出现的bug比较多(这个依据库里的bug录
你的做法和我文章的说的类似,只是我多套用了一个2/8原则。单一从bug数目来来统计,会有一些缺陷如我前面的回复。


刘旸  2010-06-07

呵呵,另一个同样经典的“最后阶段总是会出问题”,啥时候我的项目能有一个避免呢。


袁帅  2010-06-09

呵呵


陆丹平  2010-06-24

二八定律被各位高人 在各领域发挥的淋漓尽致呀  佩服


登录 后发表评论