Why Technical Debt Has Proven so Resistant to Solutions
One thing about technical debt that has puzzled myself and many others is why has this technical debt problem proven so resistant to solutions? After all, over the past few decades we have faced and solved many problems, some of which appear to be considerably more complex than our problem of technical debt. So why does it remain an endemic problem within our industry?
It does not remain unsolved through lack of trying. Many have attempted to address technical debt, with varying degrees of success.
There are several reasons why technical debt has proved so resistant, with many of these reasons interconnected. In Taming Your Dragon, I explore eight reasons why technical debt has proven resistant to solutions. In this article, I’ll look at the most fundamental one – most of us do not fully understand what technical debt is.
Technical debt is misunderstood
We tend to think of technical debt as a technical problem, caused by those technical people (of course, who else?). We believe that the technical debt exists because we didn’t apply the correct solution at the time, so we must now go back and fix it, provided we have the time, and provided we deem it important enough to fix.
Because we think of technical debt as a technical problem, rather than something else, like a trade-off problem, we end up looking in the wrong place for a solution. It’s like the joke about the drunk searching for his lost keys beneath the light of the lamppost. He lost his keys in a different place, in the darkness, but it’s so much easier to search beneath the lamppost.
Our misunderstanding is compounded by our tendency to be overconfident, a tendency all humans have. This is a cognitive bias – the overconfidence effect. Often, this bias is a good thing. Humans would never have expanded out from Africa, sailed the oceans to inhabit new lands, or developed the technology to put a person on the moon or put a pop tart in a toaster without some of our ancestors getting a bit too cocky and reaching beyond what was currently possible.
However, this overconfidence also means that we believe we understand things better than we really do. We use a financial debt analogy to help us understand the essence of the problem, even if we don’t understand many of the details.
However, because we understand financial debt so well, we mistakenly believe that we also enjoy a similar level of understanding of technical debt. This mistaken belief prevents us from exploring the problem further – after all, we know what the problem is. It also causes us to implement solutions that don’t fully address the problem, but we are confident will work.
In my next article, I’ll look at another reason that technical debt has proven so resistant to solutions – we try to deal with technical debt at the wrong time and place.
#TechnicalDebt #TamingYourDragon #Apress
Practice Lead Auto |Q Noord | Community Enthusiast | Testpeditionist|
1 天前Really curious about your next article Andrew, we all know the cost of owning a mess. Somehow we can't solve it.