to design maintainable systems and preserve maintainability as a system ages, but out of convenience or ignorance, these practices are often not followed.
Because the predicted firestorm of Y2K problems never happened, we may have been lulled into under-preparing for possible future disasters. Legal groups such as associations of trial attorneys, no doubt in eager anticipation of plentiful fees, had predicted the total Y2K litigation potential to be as high as $1 trillion (yes, that's with a "t"). The actual amount of Y2K damages paid probably did not exceed $1 million, according to the Wall Street Journal . This works out to less than a penny for every $10,000 that had been anticipated.
Depending on which news report you read, societies worldwide spent as much as $500 billion on fixing Y2K computer problems. Many experts believed that without costly and time-consuming renovations, millions of existing computer systems were destined to fail at the end of 1999. Prudent people hoarded months' worth of food, guns, survival gear, and good trashy novels. Doomsday prophets forecasted that the world would end at midnight, 31 December.
With hindsight, though, many people now believe that the vast majority of the expenditures for Y2K computer fixes were unnecessary and that Y2K was an anticlimax. But the post-Y2K complacency is misguided. The true story is that the event was an anticlimax precisely because the heavy expenditures helped to avoid numerous fiascoes.
If you consider the real-world consequences of not fixing the problems prior to Y2K, these preventive expenditures were minor. In the Y2K effort, the measure of success is what did not happen after the beginning of 2000.
What Could Have Gone Wrong?
The number and severity of Y2K problems that were found in test mode, where midnight on 12/31/99 was simulated in testing before it actually happened, more than justified the preventive expenditures. Examples of problems found in test mode (and fixed before Y2K occurred), according to various news reports, include
- In New York, elevators froze. The elevator software believed that the elevators had not been maintained for 99 years. They shut down, as they were designed to do when their maintenance was overdue.
- In Southern California, an office building locked up during the Y2K test and refused to accept employees' scan-card building passes. A fire emergency was declared, and the local fire service used fire axes to break open plate glass windows in order to provide an exit from the building. (This example may be an urban legend, but it was reported in the local press. How many test professionals can ever say that their testing has caused fire engines to rush to the site?)
- In Lubbock, Texas, all the cell doors in a state prison unlocked at the simulated time of midnight on 12/31/99. Party time for the long-deprived felons.
- Boeing reported that 750 of its airplanes were found to have Y2K problems, with more than 50 planes impacted to the point where they would not be able to fly.
- Police dispatch systems, credit card systems, emergency telephone (911) systems, and oil pipeline pumping systems, among others, also went
awry during testing with simulated Y2K dates.
With hindsight, perhaps there was over-testing, but the consequences of under-testing would have been far worse.
Y2K was widely viewed as an anticlimax and the mitigation efforts as vast overkill. But the efforts were successful-an anticlimax is exactly what society wanted to achieve. What were the outcomes of the event? I make the following observations:
- Perhaps the more important payoff has been an inconspicuous byproduct. Billions of lines of source code have been cleaned up,