| << Denmark Lied!!! | The Van >> |
After more than ten years in the software industry, I’ve seen projects large and small implode for a variety of reasons. Although the process of software development starts off like a traditional engineering task, beyond a certain level of complexity, software takes on biological properties.
To run smoothly, software must be in perfect balance. Changes to the environment can disturb that balance; a change in one area can cause problems in seemingly unrelated areas. That’s why software maintenance tends to get exponentially more complex for each incremental increase in the amount of code in a given project.
Despite having seen projects disintegrate in stunning fashion, I was still surprised by the extent of the damage done by a failed software upgrade at AT&T Wireless. An article in CIO magazine details the horrors “that cost the telco thousands of new customers and an estimated $100 million in lost revenue.”

