Better Software - July/August 2008 - (Page 9) Technically Speaking Software: Use at Your Own Risk by Chuck Allison that an excuse for poor “BANGKOK (Reuters)—Sesoftware quality? Not curity guards smashed their Software from where I sit. I think way into an official limouwe are approaching a sine with sledgehammers development has time when one-sided lion Monday to rescue Thaicense agreements will no land’s finance minister after his car’s computer failed been likened to nailing jelly longer fly. The same CNN ar… All doors and windows ticle reports that “dehad locked automatically fects stem from several when the computer crashed, to a tree—and for sources: software comand the air-conditioning plexity, commercial presstopped, officials said. ‘We sure to bring products could hardly breathe for good reason. out quickly, the indusover 10 minutes … It took my guard a long time to realize that we try’s lack of liability for defects, and really wanted the window smashed so poor work methods.” The complexity that we could crawl out. It was a har- stems from the increased applicability of automation to daily tasks and users’ rowing experience.’” [1] Many of us merely reboot when demand for the same. If there were more software misbehaves, but, as one CNN accountability for quality, however, venreport stated, “malfunctions caused by dors wouldn’t rush to market so soon bizarre and frustrating glitches are be- with a buggy product. Quoting the arcoming harder and harder to escape now ticle again: “‘Software is being treated in that software controls everything from a way that no other consumer products stoves to cell phones, trains, cars, and are,’ said Barbara Simons, former president of the Association of Computing power plants.” [2] For years, users of software prod- Machinery. ‘We all know that you can’t ucts have blithely glanced over license produce 100 percent bug-free software. agreements such as the following: “[The But to go to the other extreme, and say Company] shall not be liable in any that software makers should have no liamanner whatsoever for results obtained bility whatsoever, strikes me as absurd.’” for using this software … THESE MA- Users are getting mad as heck, and TERIALS ARE PROVIDED ‘AS IS’ they’re not going to take it anymore. And so are developers and testers. WITHOUT WARRANTY OF ANY KIND … [THE COMPANY] AND ITS How often have you been asked by manSUPPLIERS DISCLAIM ANY AND ALL agement to cut corners? It is true that the WARRANTIES AND CONDITIONS, natural tension between management and development is necessary to balance EITHER EXPRESS OR IMPLIED.” Contrast this with the warranty for the forces that demand quality as well as almost any other product you buy. When profitability, but the nature of most orpurchasing an appliance, the strength of ganizations stacks the deck in favor of the warranty is often what sways the management in the wrong places. When buyer’s decision. With software, it’s al- that happens, quality takes a hit. A ways “use at your own risk.” Is it any healthy organization will place managewonder we’re conditioned to expect ment and development on a more equal footing as far as quality is concerned. software to fail? No document I’m aware of presents Is it really all that hard to produce software that works? Yes. Software de- the case for moral principles in software velopment has been likened to nailing development better than the code of jelly to a tree—and for good reason. Is ethics of the Association of Computer Machinery (ACM) [3]. Here is a sampling of its tenets: • Contribute to society and human well-being. • Avoid harm to others. • Strive to achieve the highest quality, effectiveness, and dignity in both the process and products of professional work. • Acquire and maintain professional competence. • Accept and provide appropriate professional review. Software may well deserve its bad rap because of a lack of integrity in the organizations and processes that produce it. Frederick Brooks’ celebrated Mythical Man Month showcases the following quote from a fine French restaurant: “Good cooking takes time. If you are made to wait, it is to serve you better, and to please you.” We need to be up front about the cost of quality software. Managers need to trust developers when it comes to technical matters, and customers need to trust that vendors are conducting business honestly. And that trust must be earned. Someday, after the political, legal, and economic dust has settled around the business of software, we may enjoy what famed physicist Richard P. Feynman envisioned in an address to Caltech graduates more than thirty years ago: “the good luck to be somewhere where you are free to maintain … integrity … and where you do not feel forced by a need to maintain your position in the organization, or financial support, or so on, to lose your integrity.”[4] {end} RefeRences: 1] “Official Trapped in Car After Computer Failed.” Reuters, May 12, 2003. 2] “Spread of Buggy Software Raises New Questions.” CNN.com, April 27, 2003. 3] www.acm.org/constitution/code.html 4] Quoted in Feynman Lectures on Computation. Perseus Publishing, 1996, p. 292. BETTER SOFTWARE www.StickyMinds.com JULY/AUGUST 2008 9 http://www.acm.org/constitution/code.html http://www.StickyMinds.com
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.