Drowning in Debt

Posted By: Michael Eisworth

In Software Development, much like in Finance, having too much debt can be a real burden.  In developing software there are trade-offs and reprioritization so that you can deliver the most business value in the shortest amount of time. When a feature, fix, or enhancement is deemed necessary but not urgent, and is thus delayed, there is a future liability created. Likewise when functionality is implemented in a way that will have to be refactored in the future an expense is incurred. This expense is called technical debt and refers to the eventual, additional development that has to be done at some point in the future to finish a particular piece of software.

It is easy to draw parallels between technical debt and financial debt. Most people understand the concept once explained even though the actual technical debt can be difficult to identify since shareholders may have different opinions as to what is debt versus an enhancement. The theory of technical debt is a great convention to communicate to laypeople (non-techies) that there are things that have to be done in the future to “clean up” existing software and make it more robust.

So technical debt is understood as something that has to be paid, and it is something that is used on purpose to help deliver, some say finance, a high value product. Yet what isn’t discussed as often is the fact that just as there is interest paid on financial debt, there is interest paid on technical debt. This issue is germane to fully understanding technical debt. 

Consider that not all debt is accepted at the same interest rate, nor, depending on the age, does all debt have the same accrued interest. That is a basic financial tenet but this is frequently overlooked when dealing with technical debt. The point here is to promote the concept of “accrued interest” when reviewing your technical debt.

Calculating the accrued interest can be challenging yet thought-provoking and it often requires a certain level of sophistication to correctly derive an agreed upon value. We can continue to use financial principles to illustrate how interest is calculated by using the following formula: 

I = P * r * t

This is to say that Interest is equal to Principle times Interest Rate, times Time.

The most important realization is that accrued interest increases exponentially as time passes.

  The formula presents a framework for assigning a value to debt items and incorporates time as a vital (albeit often overlooked) dimension when calculating which items have the highest debt.

So in summary, it is important to dive beyond cursory knowledge of the technical debt concept and move to a more comprehensive understanding by incorporating and valuing debt over time. Items that linger “on the books” can become very costly and should be addressed. Furthermore, it is vital to recognize how much debt a company should carry and responsibly manage the burden.

Michael Eisworth joined the development organization last year to help provide reporting solutions.  He has been developing information management systems since the late 80’s.

Posted In: Tips,

No one has commented yet. Be the first!
Commenting is not available in this channel entry.


Previous Posts:

Subscribe to the RSS feed!