Software bug

From Conservapedia
Jump to: navigation, search

A Software bug is an errors in computer software. These are errors which are introduced accidentally while writing or altering code.

Levels of severity

There are levels of bugs:

  1. Crashes the operating system - you lose all your unsaved work in all programs
  2. Crashes the program - you lose your unsaved work in that program
  3. Feature stops working or works wrong
  4. Feature is hard to find ("Can't get there from here") - feature exists, but poorly documented, so you can't find it.

Other ways to classify bugs

The need for vigilance

Speaking of one particularly embarrassing software bug, world class Java expert Joshua Bloch wrote:

  • The general lesson that I take away from this bug is humility: It is hard to write even the smallest piece of code correctly, and our whole world runs on big, complex pieces of code. We programmers need all the help we can get, and we should never assume otherwise. Careful design is great. Testing is great. Formal methods are great. Code reviews are great. Static analysis is great. But none of these things alone are sufficient to eliminate bugs: They will always be with us. A bug can exist for half a century despite our best efforts to exterminate it. We must program carefully, defensively, and remain ever vigilant. [1]