On the value of a prioritization scheme for resolving Self-admitted technical debt

Solomon Mensah, Jacky Keung, Jeffery Svajlenko, Kwabena Ebo Bennin, Qing Mi

Research output: Contribution to journalArticlepeer-review

30 Citations (Scopus)

Abstract

Programmers tend to leave incomplete, temporary workarounds and buggy codes that require rework in software development and such pitfall is referred to as Self-admitted Technical Debt (SATD). Previous studies have shown that SATD negatively affects software project and incurs high maintenance overheads. In this study, we introduce a prioritization scheme comprising mainly of identification, examination and rework effort estimation of prioritized tasks in order to make a final decision prior to software release. Using the proposed prioritization scheme, we perform an exploratory analysis on four open source projects to investigate how SATD can be minimized. Four prominent causes of SATD are identified, namely code smells (23.2%), complicated and complex tasks (22.0%), inadequate code testing (21.2%) and unexpected code performance (17.4%). Results show that, among all the types of SATD, design debts on average are highly prone to software bugs across the four projects analysed. Our findings show that a rework effort of approximately 10 to 25 commented LOC per SATD source file is needed to address the highly prioritized SATD (vital few) tasks. The proposed prioritization scheme is a novel technique that will aid in decision making prior to software release in an attempt to minimize high maintenance overheads.

Original languageEnglish
Pages (from-to)37-54
Number of pages18
JournalJournal of Systems and Software
Volume135
DOIs
Publication statusPublished - Jan 2018
Externally publishedYes

Keywords

  • Open source projects
  • Prioritization scheme
  • Self-admitted technical debt
  • Source code comment
  • Textual indicators

Fingerprint

Dive into the research topics of 'On the value of a prioritization scheme for resolving Self-admitted technical debt'. Together they form a unique fingerprint.

Cite this