Stephen A. Lawrence wrote:

> The number of bugs in a software package decreases at first
> and then increases, inexorably, to the point where the software becomes
> unusable.

Can you name an example where this has happened?

It has happened to every software package I ever wrote which remained in use.

Brooks (p. 121) cites B. Campell, MIT Lab. for Nuclear Science, and elsewhere as I recall he talked about AT&T central office programming.


Lots of software has gone "obsolete" as a result of failure to keep up
with hardware changes or as a result of being too hard to modify for
newly surfaced requirements, but that's *NOT* what you're claiming here.

Correct. Brooks discusses that elsewhere. It is a related but somewhat different topic. As you say, most software has to be maintained and changed in response to demands from the customers and changes in the real world, such as new tax codes for an accounting package, and you have to respond to customer complaints about bugs. When you do that, problems with the original design gradually surface, and eventually degrade performance. When you try to fix bugs, you end up causing more bugs than you started with. You cannot patch a profound systematic error in the design of a program or machine. You have to start over from scratch.

Naturally if you perform no maintenance and fix no bugs, and you leave the program exactly as it is for 5 or 10 years, it will work as well as it ever did. The driver and software for my Hewlett-Packard scanner hasn't been changed or updated in years, but it still functions. (But probably not with Vista!) If you can live with the bugs that's fine. This scanner, for example, has a bad habit of losing track of where the scanner head is and freezing up when I perform certain operations such as scanning large sheets too quickly. I have learned not to do that.


The number of *REPORTED* bugs always increases with time, to the point
where the bug database may become unusable. . . .

That's true too. It is a function of the customers becoming more skilled with the software, and using more features. Brooks discusses this as well.

Brooks, by the way, refers to the book Frederick P. Brooks, "The Mythical Man Month," (Addison-Wesley, 1975). Highly recommended. Brooks is the "father of the IBM System/360." I concur with his observations. It does not "sound like BS" to me.

- Jed

Reply via email to