Influence of Technical Debt in Software Evolution

Kent Beck posted an interesting essay this week on a typical phenomenon that we see in almost every digital product that is subject to continuous improvement. In short, things get worse before they improve (The Trough of Despair) to a desired state after new features are implemented. He calls the first step of the process “the dip” and questions: “How much worse is it going to get? How long is it going to get worse?”

My take is: it depends on how much technical debt the product has. The higher the technical debt, the worse things will get during and after the new features are implemented. It will get worse until all technical debt is mapped, understood, and evaluated against the new development effort. It’s not rare to see teams react like this: “We better change this feature slightly this way, otherwise we’d have to touch the XYZ module and we know this would slow us down for several weeks.” Now imagine the same scenario with a newer team that is unaware of the XYZ module debt… things would go really bad.

tags