Issue No.02 - March/April (2011 vol.28)
Forrest Shull , Fraunhofer Center for Experimental Software
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2011.38
The metaphor of "technical debt" is useful for reasoning about trading off software development activities: An exclusive focus on implementing functionality can lead to code decay. Since this deterioration of the system usually reflects a lack of activity spent on refactoring, documentation, and other aspects of the project infrastructure, it can be viewed as a kind of debt that the developers owe the system. Meaningful forms and indications of technical debt tend to be driven by project-specific quality concerns. Work with several organizations indicates that it is a healthy thing for projects to take a bit of time for reflection on what kinds of technical debt they are most concerned about—and think of ways to keep an eye on how much debt is accumulating.
technical debt, code decay, code smells, software maintainability, software engineering
Forrest Shull, "Perfectionists in a World of Finite Resources", IEEE Software, vol.28, no. 2, pp. 4-6, March/April 2011, doi:10.1109/MS.2011.38