Back in the 1950s and 1960s, software quality was a hit-or-miss proposition. There were no formal development processes and no formal testing processes. Software developers of the 1970s and 1980s were, for the most part, successful in capturing their best development practices. This capture provided a repeatable level of software reliability and stability. Unfortunately for customers, the level of software reliability and stability provided by these repeatable corporate processes was far below the level of software reliability and stability of the earlier systems. It is an informed conjecture that the missing ingredient was a comparable software testing process. For unexplained reasons, this new, lower quality software became acceptable as the norm to a large number of computer users. Testing did not become a recognized formal software process until the 1990s when the Y2K Sword of Damocles threatened all industries that somehow relied on computer power for their livelihood. Then, testing was thrust to the forefront of software activities as the savior of the 21st century. Billions of dollars were spent mitigating the possible business disasters caused by the shortcuts programmers had taken when coding dates.