2010-11-04

What happens when we don’t check our work

Things blow up in the sky

In 1996, Europe’s newest unmanned satellite-launching rocket, the Ariane 5, was intentionally blown up just seconds after taking off on its maiden flight from Kourou, French Guiana. The European Space Agency estimated that total development of Ariane 5 cost more than 8 billion USD. On board Ariane 5 was a 500 million USD set of four scientific satellites created to study how the Earth’s magnetic field interacts with Solar Winds. According to a piece in the New York Times Magazine, the self-destruction was triggered by software trying to stuff “a 64-bit number into a 16-bit space. … This shutdown occurred 36.7 seconds after launch, when the guidance system’s own computer tried to convert one piece of data—the sideways velocity of the rocket—from a 64-bit format to a 16-bit format. The number was too big, and an overflow error resulted. When the guidance system shut down, it passed control to an identical, redundant unit, which was there to provide backup in case of just such a failure. But the second unit had failed in the identical manner a few milliseconds before. And why not? It was running the same software.”—Abridged from The top 10 IT disasters of all time, retrieved 2010-11-04.


Hybrids go haywire

Toyota recalled 160 000 of its Prius hybrid vehicles following reports of vehicle warning lights illuminating for no reason, and cars’ gasoline engines stalling unexpectedly. But unlike the large-scale auto recalls of years past, the root of the Prius issue wasn’t a hardware problem—it was a programming error in the smart car’s embedded code. The Prius had a software bug.—Abridged from History’s Worst Software Bugs, retrieved 2010-11-04.


People die

In the mid-1980s, a Canadian-designed radiation therapy device malfunctioned and delivered lethal radiation doses at several medical facilities. Based upon a previous design, the Therac-25 was an “improved” therapy system that could deliver two different kinds of radiation: either a low-power electron beam (beta particles) or X-rays. The Therac-25’s X-rays were generated by smashing high-power electrons into a metal target positioned between the electron gun and the patient. A second “improvement” was the replacement of the older Therac-20’s electromechanical safety interlocks with software control, a decision made because software was perceived to be more reliable. What engineers didn’t know was that both the 20 and the 25 were built upon an operating system that had been kludged together by a programmer with no formal training. Because of a subtle bug called a “race condition,” a quick-fingered typist could accidentally configure the Therac-25 so the electron beam would fire in high-power mode but with the metal X-ray target out of position. At least five patients died; others are seriously injured.—Abridged from History’s Worst Software Bugs, retrieved 2010-11-04.

No comments:

Post a Comment