Difference between revisions of "Software defect"

From Wiki @ Karl Jones dot com
Jump to: navigation, search
(Extremely serious consequences)
Line 1: Line 1:
A '''software defect''' (or '''bug''') is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.
+
A '''software defect''' (or '''bug''') is an error, flaw, failure, or fault in a [[computer program]] or [[Computer system|system]] that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.
  
 
A program that contains a large number of defects, and/or defects that seriously interfere with its functionality, is said to be ''buggy''.
 
A program that contains a large number of defects, and/or defects that seriously interfere with its functionality, is said to be ''buggy''.
Line 56: Line 56:
 
== See also ==
 
== See also ==
  
 +
* [[Computer program]]
 +
* [[Computer system]]
 
* [[Computer security]]
 
* [[Computer security]]
 
* [[Exploit (computer security)]]
 
* [[Exploit (computer security)]]

Revision as of 18:53, 17 February 2016

A software defect (or bug) is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.

A program that contains a large number of defects, and/or defects that seriously interfere with its functionality, is said to be buggy.

Causes

Most software defects arise from mistakes and errors made by people in either a program's source code or its design, or in frameworks and operating systems used by such programs, and a few are caused by compilers producing incorrect code.

Defect reports

Reports detailing defects in a program are known by a wide range of terms, including:

  • Defect reports
  • Bug reports
  • Fault reports
  • Problem reports
  • Trouble reports
  • Change requests

Consequences

Software defects trigger errors that can in turn have a wide variety of ripple effects, with varying levels of inconvenience to the user of the program.

Long-term undetection

Some defects have only a subtle effect on the program's functionality, and may thus lie undetected for a long time.

Crashing and freezing

More serious defects may cause the program to crash or freeze.

Security defects

Others qualify as security defects and might for example enable a malicious user to bypass access controls in order to obtain unauthorized privileges.

Extremely serious consequences

The results of software defects may be extremely serious.

Therac-25

Defects in the code controlling the Therac-25 radiation therapy machine were directly responsible for patient deaths in the 1980s.

Ariane 5

In 1996, the European Space Agency's US$1 billion prototype Ariane 5 rocket had to be destroyed less than a minute after launch, due to a defect in the on-board guidance computer program.

Royal Air Force Chinook helicopter

In June 1994, a Royal Air Force Chinook helicopter crashed into the Mull of Kintyre, killing 29. This was initially dismissed as pilot error, but an investigation by Computer Weekly uncovered sufficient evidence to convince a House of Lords inquiry that it may have been caused by a software defect in the aircraft's engine control computer.

Economics

In 2002, a study commissioned by the US Department of Commerce' National Institute of Standards and Technology concluded that "software bugs, or errors, are so prevalent and so detrimental that they cost the US economy an estimated $59 billion annually, or about 0.6 percent of the gross domestic product".

See also

External links