From Wikipedia, the free encyclopedia
Jump to: navigation, search

Bebugging (or fault seeding) is a popular software engineering technique used in the 1970s to measure test coverage. Known bugs are randomly added to a program source code and the programmer is tasked to find them. The percentage of the known bugs not found gives an indication of the real bugs that remain.

The earliest application of bebugging was Harlan Mills's fault seeding approach [1] which was later refined by stratified fault-seeding.[2] These techniques worked by adding a number of known faults to a software system for the purpose of monitoring the rate of detection and removal. This assumed that it is possible to estimate the number of remaining faults in a software system still to be detected by a particular test methodology.

Bebugging is a type of fault injection.

See also[edit]


  1. ^ H. D. Mills, "On the Statistical Validation of Computer Programs," IBM Federal Systems Division 1972.
  2. ^ L. J. Morell and J. M. Voas, "Infection and Propagation Analysis: A Fault-Based Approach to Estimating Software Reliability," College of William and Mary in Virginia, Department of Computer Science September, 1988.