technical debt

In software development, technical debt is a metaphor equating Extreme Programming’s incremental, get-something-started approach with the easy acquisition of money through fast loans. In business, the metaphor is often used to illustrate the concept that an organization will end up spending more in the future by not addressing a technical problem when it first presents itself.

In software development, technical debt is a metaphor equating Extreme Programming’s incremental, get-something-started approach with the easy acquisition of money through fast loans.

A monetary loan, of course, has to be paid back with interest. In terms of software development, payback requires the developers to refactor the program as they learn more about how it interacts with other applications and which features end users are using, or not using, or wish they had. Just as monetary debt can easily spiral out of control if not managed properly, so can technical debt.

In business, the metaphor is often used to illustrate the concept that an organization will end up spending more in the future by not addressing a technical problem when it first presents itself. The assumption is that if an organization chooses to ignore a course of action it knows should be taken, the organization will risk paying for it in terms of time, money or damage to the organization's reputation in the future. As time goes by, efforts to go back and address the original problem may become complicated by new developments. Eventually the problem may reach a tipping point and the organization must then decide whether or not to honor its original debt and continue investing time and effort to fix the problem. This decision can be made more difficult by something called the sunk cost effect, which is the emotional tendency of humans to want to continue investing in something that clearly isn't working.  

The metaphor is credited to software developer Ward Cunningham, who is perhaps best known for creating the first wiki.  Cunningham proposes that getting software up and working as quickly as possible is not necessarily a bad thing. Cash that has been acquired with a loan can be spent right away. Similarly, a software product that ships quickly can provide immediate benefit to the business that needs it -- while also providing the program's developers with valuable feedback about how their code is working in the real world. 

Ward Cunningham explains why he chose the word debt.

 

 

This was first published in December 2013

Continue Reading About technical debt

Glossary

'technical debt' is part of the:

View All Definitions

Dig deeper on SAP support and maintenance

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchManufacturingERP

SearchOracle

SearchDataManagement

SearchAWS

SearchBusinessAnalytics

SearchCRM

SearchContentManagement

SearchFinancialApplications

Close