Comment on Unmanageable Software
From: warren montgomery <wamontgomery@worldnet.att.net>
Sent: Monday, May 12, 2008 7:55:40 AM
I
read an article that Microsoft has made the Windows OS so convoluted
that it is no longer manageable. ... Once you destroy or demoralize a
technical structure for a complicated product, you can no longer
enhance the product like you once could. JMHOOC.
Perhaps its not that bad -- but it
appears that there are problems with Windows OS. Its a bulky, overly
complicated, interrelated product that is becoming unwieldy. ...
I don't know that the problem is demoralized staff so much as it is
years of accumulated "accidental complexity". At one point during my
work on software tools and productivity one of the theories advanced
for why big programs get out of control was that any complicated system
(e.g. a large software program) has both essential and accidental
complexity. The essential complexity is the stuff related to what the
system actually has to do, which can be complicated, but in most cases
it gets dwarfed by the accidental complexity, which is the stuff that
results from the decisions the designers make. The longer a system
lives, the more designers come in and the more accidental complexity is
introduced, because no two people look at the system the same way.
Eventually it reaches the point where the developers simply don't
believe they can change what's there and start introducing duplicated
code rather than modifying the existing system, even when just to fix a
bug, because they can no longer determine whether anything actually
relies on the system to behave the way it does. It's a lot like what
happens to old wiring, especially distributing frames. Because none of
the old stuff is torn out, it just keeps accumulating and getting in
the way of anything new you want to do. The only solution likely to
work is to start over fresh.