The principle of entropy applies to software just as well as it does to the physical world—all entities tend to disintegrate over time. An IT software project may begin with a short scale prototype of easier implementation and clear design. Those select few prototypes that make it to the marketplace will often undergo rapid expansion. This is usually in response to an avalanche of customer requests for additional (and sometimes esoteric) new features, as well as defects. New development combined with bug fixes tend to wreak havoc on the original crystal-clear design. Over time, the clarity of the design and implementation evaporates through maintenance and frequent release cycles. Software inevitably tends towards chaos. The only factor separating the good ones from the not-so-good ones is the rate of decay.
0 comments:
Post a Comment