|
今天说说"80/20"原理在软件测试工作中的应用。
"80/20"原理是按事情的"重要程度"编排行事优先次序的准则是建立在"重要的少数与琐碎的多数"原理的基础上。这个原理是十九世纪末期与二十世纪初期的意大利经济学家兼社会学家维弗烈度·柏瑞图所提出。它的大意是:在任何特定群体中,重要的因子通常只占少数,而不重要的因子则占多数,因此只要能控制具有重要性的少数因子即能控制全局。这个原理经过多年的演化,已变成当今管理学界所熟知的"80/20"原理--即百分之八十的价值是来自百分之二十的因子,其余的百分之二十的价值则来自百分之八十的因子.
"80/20"原理对所有人的一个重要启示便是:避免将时间花在琐碎的多数问题上,因为就算你花了80%的时间,你也只能取得20%的成效:你应该将时间花于重要的少数问题上,因为掌握了这些重要的少数问题,你只花20%的时间,即可取得80%的成效。
在软件测试工作中,"80/20"原理主要应用于缺陷分布分析与性能测试需求分析。缺陷分布分析中,它指的是80%的BUG是在20%的程序代码中发现,这其实也就是缺陷的“群集现象”。下面主要说说"80/20"原理在性能测试需求分析中的应用。
在性能测试需求分析中,"80/20"原理被这样理解:每日80%的业务在20%的时间内完成。例如:每年业务量集中在8个月,每个月20个工作日,每个工作日8小时,即每天80%的业务量在1.6个小时内完成。
下面举个实际的例子来看"80/20"原理的应用于性能测试需求分析。
去年全年处理业务约100万笔,其中,15%的业务处理中,每笔业务需对应用服务器提交7次请求;70%的业务处理中,每笔业务需对应用服务器提交5次请求;其余15%的业务处理中,每笔业务需对应用服务器提交3次请求。根据以往的统计结果,每年的业务增量为15%,考虑到今后3年业务发展的需要,测试需按现有业务量得两倍进行。
测试强度估算方法如下:
每年总的请求数为(100*15%*7+100*70%*5+100*15%*3)*2=1000万次/年
每天的请求数为1000/(8个月*20天)=6.25万次/天
每秒的请求数为(62500*80%)/(8小时*20%*3600秒)=8.68次/秒
即应用服务器处理请求的能力应达到9次/秒。 |
|