What Is Software Bug Seeding?

by Nataliia Vasylyna | November 22, 2011 10:00 am

Note: the article was updated in September 2018.

Bug seeding or bebugging is a technique that was developed to evaluate the number of software issues resident in the software product. There are two criteria that explain test and software quality:[1] Bug Detection Rate and Number of Remaining Bugs.

Bug detection rate measures the effectiveness of software testing. Bug detection rate shows the number of faults found by the software tests. Number of remaining bugs is a software metric that reveals how many issues remain after performing the tests.

The key idea of a Bug Seeding is to contaminate a software with artificial errors and run tests. The quantity of real and artificial bugs discovered is calculated after testing.

Bug seeding includes five steps.bug-seeding-stepsBug Modeling is a process of making an artificial bug. Their types vary greatly and here works your creativity.

Bug Injection is the next step of seeding an artificial bug into your software. It is up to you to regulate the number of errors that will be seeded. Remember that the major branch must not be injected. It is better to create the additional one to seed the bugs there.

Test Execution is a stage where you run tests manually or automated test scripts.

Calculation is done after discovering the amount of actual and fake bugs. Three values can be calculated:

The relationship between real and implemented bugs can be described using the following equation:seeding-bugs-equationBug Detection Rate and the amount of errors remained are calculated with these equations:
bug-seeding-equationInterpretation is the last stage of Bug Seeding. Its major task is to assess the software[2] and the quality of performed tests. The data are then used to improve the revealed defects.

Drawbacks of Bug Seeding & tips to avoid them

The main problem with this type of testing is that testers often forget to remove the seeded errors. Another problem is that bug abolishing can lead to new bugs. The advice is to seed bugs only to additional branches and to check twice if all the faults have been removed before the final testing or product release.

Learn more from QATestLab

Related Posts:

Endnotes:
  1. software quality:: https://qatestlab.com/approach/technologies/
  2. to assess the software: https://qatestlab.com/resources/knowledge-center/how-to-estimate-time-and-resources-needed-for-a-software-testing-process/
  3. Definitions and Meaning: Error, Fault, Failure and Defect: https://blog.qatestlab.com/2011/12/06/definitions-and-meaning-error-fault-failure-and-defect/
  4. The Secret of NFT Games Popularity: Features and Benefits: https://blog.qatestlab.com/2022/07/13/nft-games-features-benefits/
  5. Software Bugs Monthly Digest – July 2021: https://blog.qatestlab.com/2021/08/04/software-bugs-monthly-digest-july-2021/

Source URL: https://blog.qatestlab.com/2011/11/22/what-is-software-bug-seeding/