Evolution of technical debt: An exploratory study
Paper in proceeding, 2019

Context: Technical debt is known to impact maintainability of software. As source code files grow in size, maintainability becomes more challenging. Therefore, it is expected that the density of technical debt in larger files would be reduced for the sake of maintainability. Objective: This exploratory study investigates whether a newly introduced metric ‘technical debt density trend’ helps to better understand and explain the evolution of technical debt. The ‘technical debt density trend’ metric is the slope of the line of two successive ‘technical debt density’ measures corresponding to the ‘lines of code’ values of two consecutive revisions of a source code file. Method: This study has used 11,822 commits or revisions of 4,013 Java source files from 21 open source projects. For the technical debt measure, SonarQube tool is used with 138 code smells. Results: This study finds that ‘technical debt density trend’ metric has interesting characteristics that make it particularly attractive to understand the pattern of accrual and repayment of technical debt by breaking down a technical debt measure into multiple components, e.g., ‘technical debt density’ can be broken down into two components showing mean density corresponding to revisions that accrue technical debt and mean density corresponding to revisions that repay technical debt. The use of ‘technical debt density trend’ metric helps us understand the evolution of technical debt with greater insights.

Software metrics

Code debt

Slope of technical debt density

Code smell

Multiple components

Odors

Technical debt density

Java source files

Open source software

Technical debt

Open source projects

Maintainability

Code smells

Exploratory studies

Technical debts

Codes (symbols)

Technical debt density trend

Author

Md Abdullah Al Mamun

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Antonio Martini

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Miroslaw Staron

University of Gothenburg

Christian Berger

University of Gothenburg

Jörgen Hansson

University of Skövde

CEUR Workshop Proceedings

16130073 (ISSN)

Vol. 2476 87-102

2019 Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement (IWSM Mensura 2019)
Haarlem, Netherlands,

Areas of Advance

Information and Communication Technology

Subject Categories

Software Engineering

More information

Latest update

3/21/2023