programs, including software integration and testing processes. Congressionaloversight hearings were requested.A small town in Illinois received an unusually large monthly electric bill of $7million in March of 1999. This was about700 times larger than its normal bill. It turned out to be due to bugs in newsoftware that had been purchased by the local power company to deal withY2K software issues.
4. Why is it often hard for management to get serious about qualityassurance?
Solving problems is a high-visibility process; preventing problems is low-visibility. This is illustrated by an old parable:In ancient China there was a family of healers, one of whom was knownthroughout the land and employed as a physician to a great lord. Thephysician was asked which of his family was the most skillful healer. Hereplied,” I tend to the sick and dying with drastic and dramatic treatments, andon occasion someone is cured and my name gets out among the lords." "Myelder brother cures sickness when it just begins to take root, and his skills areknown among the local peasants and neighbors." "My eldest brother is able tosense the spirit of sickness and eradicate it before it takes form. His name isunknown outside our home."
5. Why does software have bugs?
Miscommunication or no communication - as to specifics of what an applicationshould or shouldn't do (the application's requirements). Software complexity -the complexity of current software applications can be difficult to comprehendfor anyone without experience in modern-day software development.Windows-type interfaces, client-server and distributed applications, datacommunications, enormous relational databases, and sheer size of applicationshave all contributed to the exponential growth in software/system complexity.And the use of object-oriented techniques can complicate instead of simplify aproject unless it is well engineered.Programming errors - programmers, like anyone else, can make mistakes.Changing requirements - the customer may not understand the effects of changes, or may understand and request them anyway - redesign,rescheduling of engineers, effects on other projects, work already completedthat may have to be redone or thrown out, hardware requirements that maybe affected, etc. If there are many minor changes or any major changes,
Page 3 of 9