Skip to main content
Enterprise Agile Planning Image

This post is from the CollabNet VersionOne blog and has not been updated since the original publish date.

Last Updated Nov 09, 2009 — Enterprise Agile Planning expert

You can’t spend your way out of technical debt

Enterprise Agile Planning

There is an axiom of personal finance that states “You cannot spend your way out of debt.”  While seemingly trite at first, it holds a truth that becomes apparent in nuance.  It becomes a mantra for those seeking a quick-fix to major financial problems: there is a more fundamental axiom stating “You didn’t get into debt overnight; nor will you get out of it overnight.”  Germane to these concepts is the idea that a behavior change is needed to go from in-debt to debt-free.

This also holds true for technical debt in agile software development.

For example, let’s think of an agile XP team.  They have this old component – let’s say it’s a charting component.  Tied to this charting component is a significant amout of technical debt.  Adding new features is expensive, and there are some bugs.  After some exploration, the team has decided they must code a replacement –  in parallel and without the debt, this time.

Once they begin working on the replacement, they hit an interesting snag: the old charting tool did a lot of stuff.  Bar graphs, pie charts, smiley faces.  They use it all over the application for many, many things.  It’s stated as a requirement that the replacement must – from the start – look, feel and behave like the the old one… just without the bugs (and debt, presumably).  Now it looks like the replacement is going to be incredibly costly – perhaps prohibitively so.  This isn’t a solid way out of technical debt.

This is where it gets tough: the behavior change.  The same old requirements/delivery patterns that got you into debt won’t get you out of it.  It’s the opportunity cost of paying off technical debt: you can’t buy functionality with the velocity you use to pay off debt.  You have to realize that those things we ‘got for free’ in the past weren’t really free, after all.  There’s no such thing as a free feature.

One thing you could do instead is ‘downshift’ to incremental development: you get the highest-priority, core-value functionality ready to ship, then you iterate.  This is Agile 101.  Each iteration gives you an opportunity to re-evaluate what you want this thing to do.  Perhaps you don’t want the same old stuff as before.  Maybe you get some innovation out of your technical debt pay-down.

The behavior change comes in forgetting what you already had, and building it right this time by managing the process correctly.  You wouldn’t design it all up-front, then deliver a monolith of a feature in a green-field situation, don’t do it here, either.

The post You can’t spend your way out of technical debt appeared first on VersionOne Blog.

More from the Blog

View more
Apr 08, 2021

Making IT services more agile

Enterprise Agile Planning
The agile revolution completely transformed how we create digital prod ...
Read More
Feb 14, 2021

Reflecting on the 20th anniversary of the Agile Manifesto

Enterprise Agile Planning
Over the past 20 years, it’s been amazing to watch an idea from ...
Read More
Feb 08, 2021

How does agile apply to an entire organization?

Enterprise Agile Planning
Before we dive into the main subject of this blog post, it is importan ...
Read More
Feb 03, 2021

It took a pandemic to realize why digital transformation actually matters

Enterprise Agile Planning
Before anyone had ever heard of COVID-19, businesses across the globe ...
Read More
Contact Us