Technical Debt Estimation
The term “Technical Debt”, first defined by Ward Cunningham, is having a renaissance. A wide variety of ways to define and calculate Technical Debt are emerging.
Technical Debt represents the effort required to fix problems that remain in the code when an application is released. The CAST Appmarq benchmarking repository provides a unique opportunity for CAST Research Labs (CRL) to calculate Technical Debt across different technologies, based on the number of engineering flaws and violations of good architectural and coding practices in that source code. This data-driven approach provides an objective and actionable estimate of Technical Debt.
CRL bases the Technical Debt calculation in an application as the cost of fixing the structural quality problems in an application that, if left unfixed, put the business at serious risk. Technical Debt includes only those problems that are highly likely to cause severe business disruption; it does not include all problems, just the most serious ones.
Based on this definition and the analysis of 1400 applications containing 550 million lines of code submitted by 160 organizations, CRL estimate that the Technical Debt of an average-sized application of 300,000 lines of code (LOC) is $1,083,000. This represents an average Technical Debt per LOC of $3.61.
For further details on our calculation method and results on the current state of software quality, please see the CRASH Report (CAST Report on Application Software Health) – 2011/12.
Recent Coverage of Technical Debt Estimation