Software Bug

Why Trust Techopedia

What Does Software Bug Mean?

A software bug is a problem causing a program to crash or produce invalid output. The problem is caused by insufficient or erroneous logic. A bug can be an error, mistake, defect or fault, which may cause failure or deviation from expected results.

Advertisements

Most bugs are due to human errors in source code or its design. A program is said to be buggy when it contains a large number of bugs, which affect program functionality and cause incorrect results.

Techopedia Explains Software Bug

Some bugs might not have serious effects on the functionality of the program and may remain undetected for a long time. A program might crash when serious bugs are left unidentified. Another category of bugs called security bugs may allow a malicious user bypass access controls and obtain unauthorized privileges.

Some of the worst bugs in history include:

  • In the 1980s, bugs in the code controlling the machine called Therac-25, used for radiation therapy, lead to patient deaths.
  • In 1996, the $1.0 billion rocket called Ariane 5 was destroyed a few seconds after launch due to a bug in the on-board guidance computer program.
  • In 1962, a bug in the flight software for the Mariner I spacecraft caused the rocket to change path from the expected path.
  • In the 1990s, a bug was found in the new release of AT&T’s software control #4ESS long distance switches caused many computers to crash.
Advertisements

Related Terms

Margaret Rouse
Senior Editor
Margaret Rouse
Senior Editor

Margaret is an award-winning technical writer and teacher known for her ability to explain complex technical subjects to a non-technical business audience. Over the past twenty years, her IT definitions have been published by Que in an encyclopedia of technology terms and cited in articles by the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine, and Discovery Magazine. She joined Techopedia in 2011. Margaret's idea of a fun day is helping IT and business professionals learn to speak each other’s highly specialized languages.