Technical Debt cover image

Technical Debt

Explaining the metaphor of the interest payments required to clean up the build-up of deficiencies in internal software quality.

Profile image of Martin Fowler
May 21, 2019 • 6 min read
4.71 (17)
Technical Debt
Quality-Driven development
Complexity
Quality Management
Eliminate Waste
Show more

Summary

Any software system is designed to accomplish a specific task. The more advanced the software system, the better it does its job but also the more complex it is. This complexity creates an internal deficit in the codebase coined as cruft that makes it difficult to modify the system. And becomes a technical debt that gains interest as more features are added. Developers cover this interest as the extra efforts spent on the system. Read this article to learn more about CRUFT and how to stop it from building and resulting in a larger technical debt.

Takeaways

  • Any software system has a certain amount of essential complexity required to do its job.
  • Crufts cause any changes to the system like adding new features to take more effort and the extra effort is considered as the interest paid on the Technical debt.
  • technical debt is relevant to financial debt and results from an internal deficiency in a codebase dubbed as (cruft), which makes it harder to modify and extend the system's code further.

Suggested Resources