Resources

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. The links at the bottom of this page cover a number of recent discussions of Technical Debt.

How Technical Debt is defined and calculated makes a big difference to the accuracy and utility of the result. Some authors count the need for upgrades as Technical Debt. This can lead to some very large estimates of Technical Debt. At CAST, our calculation of Technical Debt is data driven, leading to an objective, conservative, and actionable estimate of Technical Debt.

At CAST we define Technical Debt in an application as the effort required to fix problems that remain in the code when an application is released. 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, we estimate that the Technical Debt of an average-sized application of 300,000 lines of code is $1,083,000. 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.

Technical Debt By Technology

The basis for our calculation of Technical Debt is our Appmarq database – this is the world’s first and only repository of application structural quality, containing data on 745 applications from 160 organizations worldwide. It contains data on the density of critical violations by technology type – Java, COBOL, C, C++, .NET, Oracle Forms, ABAP, and Visual Basic.

Appmarq serves as the solid data-driven foundation upon which to calculate Technical Debt.

Recent Coverage of Technical Debt

Follow
Us