Authors:
Arthur-Jozsef Molnar
and
Simona Motogna
Affiliation:
Faculty of Mathematics and Computer Science, Babeş-Bolyai University, Cluj-Napoca, Romania
Keyword(s):
Technical Debt, Software Evolution, Longitudinal Case Study, Open-source Software, Software Maintenance.
Abstract:
Technical debt represents deficiencies in software design or implementation often caused by prioritizing feature development over fixing existing issues. Like its financial counterpart, technical debt comprises a principal and an interest. Not addressing it in time leads to development crises, where focus and resources must be shifted to address existing issues. Existing software tools allow measuring the level of debt and pinpointing its sources, which can help practitioners control it. In the present paper we aim to investigate the prevalence, characteristics, and evolution of technical debt in several open-source applications. We used SonarQube to study 112 application versions that covered more than 15 years of development for each application. We studied the way debt characteristics and source code distribution evolved over the target applications’ lifecycles. We addressed concerns regarding the accuracy of the analysis and illustrated some of the limitations of existing tools.
We observed that a small number of issue types were responsible for most of the debt. We found that each application had its own technical debt particularities. As future work, we aim to expand our selection of analysis tools, leverage open data sets, and extend our investigation to other systems and types of software.
(More)