Pareto Principle in Software Testing

Pareto Principle in Software Testing
February 25 11:10 2011 Print This Article

Note: The article was updated in July 2018.

Pareto Principle states that 20% of efforts bring 80% of results, and the other 80% of efforts bring only 20% of results.

The first person to discover this pattern was Vilfredo Pareto, an economist from Italy. He concluded that 80% of all property in Italy belonged to only 20% of the population. He also suggested that this pattern could be found in many other areas.

Eventually, the principle received the name “Pareto Principle” and was applied to a number of different fields and industries. Quality assurance (QA) is not an exception.

Pareto principle in software testing

In software testing Pareto Principle is commonly interpreted as “80% of all bugs can be found in 20% of program modules”. Moreover, a half of the modules may contain no bugs at all. The numbers, of course, are approximate, and the real ratio can be 30% and 70%, etc. The idea is that the distribution of software glitches is not equal, and they usually cluster in a certain part of the code. Especially it is typical for the most severe defects.

Applying Pareto Principle to QA activities helps to decrease testing time and to increase its efficiency. But you should know how and when to use it in order to achieve better results.

Here are several ways to apply Pareto Principle in software testing:

  • Try to sort out the defects according to their causes, not to consequences. It means you should not group bugs which cause the same results. It is better to group issues that occur in the same module.
  • Collaborate with developers to find out new ways to group the issues. For example, they may use the same underlying library for the modules where the most of the bugs have been found.
  • Spend enough time and effort on identifying the problem areas in code rather than finding random bugs.
  • Prioritize test cases in order to start with the most critical ones.
  • Analyze users’ feedback. It will help to identify risk areas as well.

Pareto Principle requires good analytical and logical skills. But it can be a very powerful tool for decreasing bugs amount while reducing overall testing effort.

Related Posts:

  Article "tagged" as:
  Categories:

About Article Author

view more articles
Nataliia Vasylyna
Nataliia Vasylyna

View More Articles