Software Bugs

Heisenbugs and Bohrbugs

Bohrbug was named after the Bohr atom. Just as the Bohr atom is solid, a Bohrbug is also solid and easily detectable by standard debug- ging techniques. The word Heisenbug comes from Heisenberg's Uncertainty Principle which states that it is fundamentally impossible to pre- dict the position and momentum of a particle at the same time. If we try to apply standard de-bugging techniques such as cyclic debugging [5] to catch the error, we may nd that the error has disappeared. Bohrbug is also called a permanent fault while Heisenbug is called as a transient or intermittent fault. Note that inspite of the name, in both cases the fault is very much there at all times.

Examples
1. Disk Drive Operation (seek time)
2. Network Characteristics (traffic & load)
3. Software Clock Drift (priority interrupts / ISR - masked)
4. Processor Clock Drift (Crystal)
5. Probe effects (debugging tools vs realtime environments)
This is a free homepage created with page4. Get your own on www.page4.com
 
Your page4 homepage 0