A Framework for Estimating Interest on Technical Debt by Monitoring Developer Activity Related to Code Comprehension
September 2014 • Presentation
Vallary Singh (University of Delaware), Will Snipes (ABB Corporate Research), Nicholas Kraft (ABB Coporate Research)
This presentation describes research to quantify technical debt by defining and calculating class-based comprehension effort metrics computed from developer logs.
This presentation was part of the Sixth International Workshop on Managing Technical Debt, held in conjunction with the 30th International Conference on Software Maintenance and Evolution (ICSME 2014).
Technical debt is a metaphor in which consequences of decisions regarding software systems are described with attributes of financial debt. Like financial debt, technical debt has two components: principal and interest. Principal is the cost of repaying the debt by reworking the code, and interest is the cost accumulated while working around the debt until the principal is paid. Current approaches can be divided into two types, one concerned only with calculation of principal of the debt and another that calculates both the principal and interest. While static code metrics have been useful in quantifying principal for estimating technical debt, we hypothesize that comprehension effort metrics are useful for quantifying interest. To this end, we propose a framework for computing comprehension effort using developer activity logs. The main contributions of this research are defining and calculating class-based comprehension effort metrics computed from developer logs and performing an initial case study to show the feasibility of such a framework.