Its the reason why any software package older than 5 years is up to version 4 or 5 or 12 by now. each new number is a built from scratch variant, to avoid just those problems.
On Thu, Jul 9, 2009 at 12:54 PM, Jed Rothwell<jedrothw...@gmail.com> wrote: > 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 > >