Title :
An Exploratory Study on Self-Admitted Technical Debt
Author :
Potdar, Aniket ; Shihab, Emad
Author_Institution :
Dept. of Software Eng., Rochester Inst. of Technol., Rochester, NY, USA
fDate :
Sept. 29 2014-Oct. 3 2014
Abstract :
Throughout a software development life cycle, developers knowingly commit code that is either incomplete, requires rework, produces errors, or is a temporary workaround. Such incomplete or temporary workarounds are commonly referred to as ´technical debt´. Our experience indicates that self-admitted technical debt is common in software projects and may negatively impact software maintenance, however, to date very little is known about them. Therefore, in this paper, we use source-code comments in four large open source software projects-Eclipse, Chromium OS, Apache HTTP Server, and ArgoUML to identify self-admitted technical debt. Using the identified technical debt, we study 1) the amount of self-admitted technical debt found in these projects, 2) why this self-admitted technical debt was introduced into the software projects and 3) how likely is the self-admitted technical debt to be removed after their introduction. We find that the amount of self-admitted technical debt exists in 2.4%-31% of the files. Furthermore, we find that developers with higher experience tend to introduce most of the self-admitted technical debt and that time pressures and complexity of the code do not correlate with the amount of self-admitted technical debt. Lastly, although self-admitted technical debt is meant to be addressed or removed in the future, only between 26.3%-63.5% of self-admitted technical debt gets removed from projects after introduction.
Keywords :
project management; public domain software; software maintenance; software management; software quality; Apache HTTP Server; ArgoUML; Chromium OS; Eclipse; open source software projects; self-admitted technical debt; software maintenance; software quality; source-code comments; Chromium; Complexity theory; Computer hacking; Correlation; Java; Software maintenance; Software comments; Technical debt;
Conference_Titel :
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location :
Victoria, BC
DOI :
10.1109/ICSME.2014.31