Toggle Menu

Insights / Digital Service Delivery / What is Technical Debt?

February 26, 2016

What is Technical Debt?

2 mins read

In my previous posts, we looked at symptoms of bad code and reasons we write bad code. Bad code leads to technical debt. Ward Cunningham introduced the Technical Debt metaphor by stating:

“Shipping first-time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite… The danger occurs when the debt is not repaid.”

Or, as Cunningham puts it even more simply

“Neglecting the design is like borrowing money. Refactoring, it’s like paying off the principal debt.”

“Developing slower because of this debt is like paying interest on the loan. Every minute spent on not-quite-right-code counts as interest on that debt.”

With technical debt, we can choose to continue paying the interest by moving slower and slower, or we can pay down the principal by refactoring the quick and dirty design into the better design which will lead us to higher productivity. So although it costs to pay down the principal, we gain by reduced interest payments in the future.

Jim Highsmith defines technical debt in terms of Cost of Change. The difference between our optimal cost of change curve and our actual cost of change curve is our technical debt. Notice how technical debt increases over time and that directly impacts our ability to respond to our customer’s requirements. Soon the product becomes unmaintainable.

bluff

In my next post, I’ll discuss how not all debt is bad, as well as the difference between good debt and bad debt.

What is Technical Debt is the third in a seven-part series on Technical Debt from Excella Software Development Lead Fadi Stephan.

Part 1: Top 4 Symptoms of Bad Code

Part 2: Top 5 Reasons Writing Bad Code Happens

Part 3: What is Technical Debt?

Part 4: Good Technical Debt vs. Bad Technical Debt

Part 5: The Vicious Cycle of Technical Debt

Part 6: The Technical Debt Management Plan

You Might Also Like

Artificial Intelligence (AI)

How to Deliver Impactful Software with Doguhan Uluca and Keith Mealo

In case you missed it, Excella Principal Fellow, Doguhan Uluca, and Senior Engagement Manager, Keith...

Excellian Spotlights

Burton White Announced as a 2023 WashingtonExec’s Chief Officer Awards Finalist

“Excellians are Passionate About Making the Tech Community More Diverse” – Burton White.  WashingtonExec announced...

Excella

The Shift Left and the Future of Tech with John Gilroy and Jeff Gallimore

In case you missed it, Jeff Gallimore, Excella’s Chief Technology and Innovation Officer, joined long-time...