What is technical debt?

trevane

I was just reading a story about a development project, and the CTO mentioned "technical debt".  What is that, and how is that monitored and managed?

Answer this Question

Answers

2 total
jimlynch
Vote Up (7)

Technical debt
http://en.wikipedia.org/wiki/Technical_debt

"Technical debt (also known as design debt[citation needed] or code debt) is a neologistic metaphor referring to the eventual consequences of poor software architecture and software development within a codebase. The debt can be thought of as work that needs to be done before a particular job can be considered complete. If the debt is not repaid, then it will keep on accumulating interest, making it hard to implement changes later on. Unaddressed technical debt increases software entropy.

As a change is started on a codebase, there is often the need to make other coordinated changes at the same time in other parts of the codebase or documentation. The other required, but uncompleted changes, are considered debt that must be paid at some point in the future. Just like financial debt, these uncompleted changes incur interest on top of interest, making it cumbersome to build a project. Although the term is used in software development primarily, it can also be applied to other professions."

StillADotcommer
Vote Up (7)

 It’s a somewhat clever way of saying cutting corners for a short term savings will cost you more in the long run. Basically, if a project has to be finished very quickly with less testing, the code will be more likely to have errors to be fixed later. Sometimes, this is the lesser of two evils if one is facing a hard deadline. However, a great example of this in practice (to some degree, anyway) is the federal government’s healthcare website, and while it met the deadline, the result was a broken site that had to be fixed at considerable cost in time, money and credibility. 

 

Here is an interesting article making the point that sometimes technical debt may be ok. 

Ask a question

Join Now or Sign In to ask a question.
Journalists, nurses and plumbers are among those who drink more coffee than people in technology
A new study of GitHub data reveals characteristics of successful open source projects
Wyvern securely rolls five programming languages into one.
The latest rankings of programming languages show a landscape that’s increasingly fragmented, but still dominated by the old guard
In the competition for developer talent, offering a good cup of joe could give your company an edge
I’ve said it all along that battery life was going to make or break this smart watch. Now that the Moto 360 is finally here, my fears have been confirmed.
Apple has added a list of rules about how developers can use HealthKit, HomeKit, and keyboard data.
App Store rejections may not be the hot-button issue it was a few years ago, but for developers, it's still a chief area of concern. To give app makers a little clarity and direction, Apple published a new page to its Developer site that outlines some of the most common reasons an app gets rejected from the App Store.
A new study of open source project growth suggests that choosing a permissive license can help your community to grow faster
Wishing your Raspberry Pi had more power for all those hardware hacking projects you have planned? There's a new barebones board on the market that may better fit your needs, and right now you can sign-up for your chance to get it for free.
randomness