Welcome to Reviews OnLine: Book Review of Ivars Peterson's Fatal Defect
BookReview
Contents
Reviews
News
Archives
 
Ivars Peterson's Fatal Defect
by Rick Smith (July 1998)

Fatal Defect could easily be the title of a science fiction book where a flaw in a global computer system drives the earth to the brink of destruction, but in the "nick of time" a specialized group of people "battle" the problem, save the world and live happily ever after. It's like the plot line of many a summer blockbuster movie.

But Fatal Defect isn't science fiction.

And no one is going to solve the problem in two hours.

Fatal Defect is a sobering book which describes many of the computer related problems and failures that have occurred in the past twenty years. These software defects and design errors have caused plenty of problems from simple mathematical mistakes to the loss of vital communications, money and even life. It bears repeating - People have died due to software errors.

Although this book was written over a half decade before the year 2000, it is interesting to see how this Y2K problem began and what people were saying in 1990 about the problem.

In a 1990 editorial titled "T minus 10 and counting" [Elliot J.] Chikofsky [a computer consultant and lecturer at Northeastern University in Boston] concluded "We'd better get started. This may take the full ten years." He also felt that January 1st and 2nd along with February 29th and March 1st of the year 2000 "be international holidays for clock resetting and database reprogramming".

Now with less than 18 months for the end of the millennium, many people are still not convinced that the problem will be fixed in time. If we had only heeded his warning.

But clock related problems have occurred before. A most telling quotation from Peter G. Neuman, principal scientist in the computer lab at SRI International is that leap year errors occur in software every four years and 2000 is no exception.

"Getting clock arithmetic correct might seem to be a conceptually simple task - ... but even if earlier leap-year problems were caught in older systems, they continue to recur in newer systems." Humorously, he adds "So, now we have four more years to develop new software with old leap-year bugs, and perhaps even some creative new ones!"

So the "clock problem" is nothing new and occurs over and over, with great regularity, but the book discusses more than the impending Year 2000 problem. It focuses on some of the computer bugs that have caused problems all around us - plane crashes, radiation overdoses, ATM errors. The book was so interesting, I could hardly put it down.

Ivars Peterson not only describes each disaster that software bugs have caused, in detail, but also quotes some of the actual people involved in tracking down the bugs. He doesn't paint a rosy picture or even give the feeling that the answer is just around the corner.

Part of the problem is that software development is a new human activity, barely 50 years old. Another is that people consider software as "trivial and unimportant" and don't recognize that "software development is hard". Some seem to feel that developers are "magicians capable of incredible juggling acts".

To some extent, the software process itself is flawed. On many projects, one or two developers are expected to handle the entire software program. However when a house is built, the architect is not expected to perform the plumbing, heating, painting or electrical work.

In searching for answers, Victor R. Basili, a computer science professor, feels that software is inherently different than other products because "it is a product of the mind and it remains so throughout its lifetime." He also feels that software is not treated with the respect it deserves because everyone is all too willing to grab at the latest widget, even though it is unproven. His analogy:

"Supposing a materials scientist came to the president of an aircraft company with a new, revolutionary metal alloy perfect for manufacturing lightweight airliner and insisted that the metal be introduced to the production line the next day. The scientist would be taken away in a straight jacket for such an outrageous recommendation. The company would want to experiment with the metal first, testing it on a small scale .... Immediate adoption would be out of the question"

Yet, when the latest version of a program hits the market, many companies are ready to bet their bottom line on the new technology. And this is what leads to many of the software related problems.

Basili remains optimistic however, about the outcome. Although we push the boundaries, he has " a basic belief that people are smart. Of course, we'll get into trouble. We may even have a couple of major accidents first. But we'll step back; we'll learn"

Even though this book is now three years old, I feel that it should be required reading for all software developers and everyone else who uses the software they produce. Only through understanding the software process and problems that have occurred in the past can we ever have a chance to create reliable software.

One final thought: If you don't think the Year 2000 problem will be solved in time, maybe you want to book passage on the "programmer's cruise" that Ivars describes.

It would depart at the end of December 1999 and sail for thirty days. To make sure everything was OK, the ship would be operated only by mechanical or simple electrical controls and NO computers. The crew would be selected on their ability to dead reckon and navigate with the stars. The ship would not sail in the normal shipping lanes or aircraft routes. There would be no communication from shore.

And when you pack your bags, you could do worse than bring along this well written technical who-dunnit, filled with scary stories that programmers will be telling each other, around the phosphor glow of their workstations, for years to come.

Table of Contents
    Preface - Bug Hunt
  1. Inside Risks
  2. Silent Death
  3. Power Failure
  4. Experience Factory
  5. Time Bomb
  6. Sorry, Wrong Number
  7. Absolute Proof
  8. Human Error

  9. Acknowledgements
    Bibliography
    Index
260 pages

Copyright 1998 Rick Smith All rights reserved.

   
Article Indexes
  Products Index
  People Index
  Events Index

Product Briefs
Desktop PCs & Servers
  Ergo Thunder Brick 2
Eizo FlexScan Displays
Future Power epower
HP NetServer LXr 8500
Meridian Snap! Server
Digital Cameras
  3Com HomeConnect
Agfa ePhoto 780c
Canon A5 Zoom
Kodak DC265
Minolta 3D 1500
Nikon D1
Olympus C2000
Sharp VN-EX1U MPEG4
Toshiba PDR-M4 & M5
Notebooks & Mobile
  3Com Palm VII
Fosa Mini Notebook
Pionex Elite
Quantex Celeron Laptop
Sharp Actius PC-A250
Sony F250/F290 Notebooks
Talontek MPC-2000
Mobile/Wireless Communications
  3Com 56K GSM Modem
Novatel Merlin Modem
Xircom Ethernet CompactCard
Mobile Software
  Etak Traffic Touch
DataViz Documents To Go
Softbook E-book System
Scanners
  Agfa SnapScan Touch
Visioneer Strobe Pro
Printers
  Brother MP-21 C Portable
Tektronix Phaser 780
Xerox 480cx
Software & Books
  Avid Cinema for Windows
Caere PageKeeper Pro
Corex Area Code Fix
Docent Outliner
Macmillan Office 2K Books
Paragon FoneSync
Symantec pcAnywhere 9.0
Sybari Antigen 5.5
V-Communications AutoSave
Projectors
  InFocus 330
Mitsubishi S120
Internet
  Club Photo
Intelliquis Traffic Builder
NETSilicon NET+Works
Panasite Web Builder
PhotoHighway.com
SuperCalendar.com
Storage
  Calluna 250 Mb PCCard
Castlewood 2.2Gb ORB
Iomega Clik!
Teac CD-W 54E
Batteries & Power
  Duracell Ultra Battery
Electrofuel PowerPad
Eveready Energizer ACCU
Graphics & Video
  Belkin USB Video Bus
Daeyang VR Headset
Kodak/Intel Picture CD
Nogatech USB TV
Number Nine SR9
Peripherals
  Logitech Cordless mouse
Raritan Switchman
Targus USB MiniMouse
 
 
Reviews OnLine Contents About Reviews OnLine Site Index Search Reviews OnLine Site Index Search Reviews OnLine