Katana VentraIP

Software bug

A software bug is a bug in computer software.

A computer program with many or serious bugs may be described as buggy.


The effects of a software bug range from minor (such as a misspelled word in the user interface) to severe (such as frequent crashing).


Software bugs have been linked to disasters. Software bugs in the Therac-25 radiation therapy machine were directly responsible for patient deaths in the 1980s. In 1996, the European Space Agency's US$1 billion prototype Ariane 5 rocket was destroyed less than a minute after launch due to a bug in the on-board guidance computer program.[1] In 1994, an RAF Chinook helicopter crashed, killing 29; was initially blamed on pilot error, but was later thought to have been caused by a software bug in the engine-control computer.[2] Buggy software caused the early 21st century British Post Office scandal.[3]


In 2002, a study commissioned by the US Department of Commerce's 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".[4]


Since the 1950s, some computer systems have been designed to detect or auto-correct various software errors during operations.

Terminology[edit]

Mistake metamorphism (from Greek meta = "change", morph = "form") refers to the evolution of a defect in the final stage of software deployment. Transformation of a "mistake" committed by an analyst in the early stages of the software development lifecycle, which leads to a "defect" in the final stage of the cycle has been called 'mistake metamorphism'.[5]


Different stages of a mistake in the development cycle may be described as mistake,[6]: 31  anomaly,[6]: 10  fault,[6]: 31  failure,[6]: 31  error,[6]: 31  exception,[6]: 31  crash,[6]: 22  glitch, bug,[6]: 14  defect, incident,[6]: 39  or side effect.

Katana VentraIP

$_$_$DEEZ_NUTS#0__titleDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#0__subtitleDEEZ_NUTS$_$_$

Controversy[edit]

Sometimes the use of bug to describe the behavior of software is contentious due to perception. Some suggest that the term should be abandoned; replaced with defect or error.


Some contend that bug implies that the defect arose on its own and push to use defect instead since it more clearly connotates caused by a human.[7]


Some contend that bug may be used to coverup an intentional design decision. In 2011, after receiving scrutiny from US Senator Al Franken for recording and storing users' locations in unencrypted files,[8] Apple called the behavior a bug. However, Justin Brookman of the Center for Democracy and Technology directly challenged that portrayal, stating "I'm glad that they are fixing what they call bugs, but I take exception with their strong denial that they track users."[9]

$_$_$DEEZ_NUTS#1__titleDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#1__descriptionDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#3__titleDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#3__descriptionDEEZ_NUTS$_$_$

A deadline must be met and resources are insufficient to fix all bugs by the deadline

[23]

Incorrect API usage.

Incorrect protocol implementation.

Incorrect hardware handling.

Incorrect assumptions of a particular platform.

systems. A new API or communications protocol may seem to work when two systems use different versions, but errors may occur when a function or feature implemented in one version is changed or missing in another. In production systems which must run continually, shutting down the entire system for a major update may not be possible, such as in the telecommunication industry[34] or the internet.[35][36][37] In this case, smaller segments of a large system are upgraded individually, to minimize disruption to a large network. However, some sections could be overlooked and not upgraded, and cause compatibility errors which may be difficult to find and repair.

Incompatible

Incorrect code annotations.

In politics[edit]

"Bugs in the System" report[edit]

The Open Technology Institute, run by the group, New America,[38] released a report "Bugs in the System" in August 2016 stating that U.S. policymakers should make reforms to help researchers identify and address software bugs. The report "highlights the need for reform in the field of software vulnerability discovery and disclosure."[39] One of the report's authors said that Congress has not done enough to address cyber software vulnerability, even though Congress has passed a number of bills to combat the larger issue of cyber security.[39]


Government researchers, companies, and cyber security experts are the people who typically discover software flaws. The report calls for reforming computer crime and copyright laws.[39]

In video gaming, the term "" is sometimes used to refer to a software bug. An example is the glitch and unofficial Pokémon species MissingNo.

glitch

In both the 1968 novel and the corresponding 1968 film 2001: A Space Odyssey, a spaceship's onboard computer, HAL 9000, attempts to kill all its crew members. In the follow-up 1982 novel, 2010: Odyssey Two, and the accompanying 1984 film, 2010, it is revealed that this action was caused by the computer having been programmed with two conflicting objectives: to fully disclose all its information, and to keep the true purpose of the flight secret from the crew; this conflict caused HAL to become paranoid and eventually homicidal.

2001: A Space Odyssey

In the English version of the Nena 1983 song (99 Red Balloons) as a result of "bugs in the software", a release of a group of 99 red balloons are mistaken for an enemy nuclear missile launch, requiring an equivalent launch response, resulting in catastrophe.

99 Luftballons

In the 1999 American comedy , three employees attempt (unsuccessfully) to exploit their company's preoccupation with the Y2K computer bug using a computer virus that sends rounded-off fractions of a penny to their bank account—a long-known technique described as salami slicing.

Office Space

The 2004 novel The Bug, by , is about a programmer's attempt to find an elusive bug in a database application.[40]

Ellen Ullman

The 2008 Canadian film is about a computer programmer at the end of 1999 struggling to fix bugs at his company related to the year 2000 problem.

Control Alt Delete

Anti-pattern

Bug bounty program

Glitch removal

Hardware bug

which classifies a bug as either a defect or a nonconformity

ISO/IEC 9126

List of software bugs

Orthogonal Defect Classification

Racetrack problem

RISKS Digest

Software defect indicator

Software regression

Software rot

Automatic bug fixing

"" – an expert webpage focus on bugs, at NIST.gov

Common Weakness Enumeration

– another Bug type

BUG type of Jim Gray

at the Wayback Machine (archived January 12, 2015)

Picture of the "first computer bug"

"" – an email from 1981 about Adm. Hopper's bug

The First Computer Bug!

"". A 2016 study of bugs in compilers

Toward Understanding Compiler Bugs in GCC and LLVM

$_$_$DEEZ_NUTS#2__titleDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__subtextDEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__quote--0DEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__name--0DEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__company_or_position--0DEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__quote--1DEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__name--1DEEZ_NUTS$_$_$

$_$_$DEEZ_NUTS#2__company_or_position--1DEEZ_NUTS$_$_$