Thursday, July 12, 2012

Check and Check Again: Disasters Caused by Untested Software


Software testing is a tough business, but somebody’s got to do it. From testing a new word processing program or Internet browser, to testing the guidance software for missiles or an upgrade to a government computer system, software testers are there to make sure everything goes smoothly. Unfortunately, sometimes things don’t get noticed, or projects are rushed through too quickly, resulting in a disaster waiting to happen.
Getting the bugs out of software isn’t always easy, but in some cases it can be a matter of life and death. You may think this is an exaggeration, but with so many vital services reliant on correctly operating software even the smallest thing missed during testing can have a huge effect. Read on to find out about some of the most notorious software failures of all time.

AT&T Network Crash
At the beginning of 1990 over half of the entire AT&T telephone network in the United States completely shut down because of a bug in their software. The previous month the company had completed a routine update of the software running on their 4ESS systems. When one of the company's 114 switching centers had a mechanical malfunction, it shut itself down and restarted as it should. Unfortunately just a single line of code had an error in it when the upgrade was carried out, which resulted in the center sending out a message to other centers. The other centers shutdown too and the chain reaction resulted in 75 million unanswered phones call over the 9 hours it took to fix the problem.

Multidata Systems International
One of the most upsetting software failures is the case of faulty software being used for radiation therapy. Multidata Systems International, a St. Louis-based programming firm, created the software that was used at the Instituto Oncologico Nacional in Panama with horrifying effect. The software, used with a Theratron radiation treatment machine, was supposed to calculate the proper dosage of radiation to use. The bugs in the software caused a number of miscalculations which subjected 28 cancer patients to radiation overdoses. Multidata Systems International never had to use their company insurance to pay for a lawsuit against them in this instance, because the doctors treating the patients were required by law to double check the dosage, and so were duly indicted for murder.

The Mariner 1
One of the most famous software blunders has to be the case of the Mariner 1 rocket. Back in 1962 NASA wanted to send a space probe to Venus, but the rocket taking it there was destroyed less than 5 minutes after it left earth. NASA destroyed the rocket because it was veering off course, which was down to the guidance software. It was the omission of a single superscript bar within the programming that caused the guidance system malfunction. The formula was hand-written on paper before being transcribed by a programmer into computer code, and was subsequently missed by the programmer.

Patriot Missile Failure
During the first Gulf War in 1991, an American base in Saudi Arabia protected by a Patriot missile battery was hit by an Iraqi Scud missile resulting in over 100 wounded and 28 killed. The Patriot missile battery was supposed to track and intercept the Scud, but a software bug caused the defense system to fail. The error was small; in the circumstances it translated to a 0.34 second error in the systems internal clock. With a Scud flying at 1,676 meters per second, less than a second was all it needed get past the Patriot.

UK Child Support Agency
In 2004 the UK’s Child Support Agency decided to install a brand new computer system from EDS, costing a whopping £456 million, which was supposed to help the agency operate more efficiently. Instead it ruined the agency and cost UK taxpayers around £1 billion. The CS2 computer system installed by EDS did not adapt well to the Child Support Agency, and the software it used completely fouled up the automatic payments it was supposed to be so good at. It underpaid somewhere in the region of 700,000 people, and overpaid around 1.9million people. The agency was shut down two years later.

As you can see from these disastrous incidents, software testing is much more important than many people think. People’s jobs and lives can depend on it, but thankfully glitches in software that cause such huge problems are not too common.




No comments:

Post a Comment