A Search-Based Approach for Technical Debt Prioritization

No Thumbnail Available

Date

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Technical debt (TD) is a metaphor used to account for the added software system effort or cost resulting from taking early software project shortcuts. This acquired debt accumulates interest and becomes more challenging to repay over time. When not managed, TD can cause significant long-term issues, such as high maintenance costs and eventual system failures. TD prioritization is the process of deciding which TD items are to be repaid first and which items are to be delayed until further releases. With limited resources at their disposal, individuals may struggle to decide which TD items should be repaid to achieve the highest possible value, as there is typically a trade-off between the value of a TD item and its cost. Though the software engineering community has developed several TD prioritization approaches, researchers have noted several limitations in the existing approaches and have called for developing new, improved approaches. The focus of this dissertation is TD prioritization. A systematic literature review (SLR) was first conducted to identify and analyze the existing TD prioritization approaches. The SLR revealed a scarcity in the identified approaches that account for value, cost, and a resource constraint in addition to a lack of industry evaluations. Moreover, an investigative study was conducted with 89 software practitioners to gain a better understanding regarding how practitioners prioritize TD in the presence of a resource constraint. The study revealed three unique patterns: most of the participants balance the trade-off between value and cost, a smaller number of participants repaid higher value TD items first, and a single participant prioritized lower cost TD items. Aiming to address the limitations identified in the existing TD prioritization approaches, this dissertation models the TD prioritization problem as a multi-objective optimization (MOO) problem and develops a search-based TD prioritization approach that is capable of handling a resource constraint. The output of the approach encompasses which TD items should be repaid to maximize the value of a given repayment activity while minimizing its cost and satisfying its resource constraint. In its evaluation, the approach was compared to random search using 40 open-source software (OSS) systems, and the approach surpassed random search in terms of best obtained solution’s value in all the cases. The approach was also compared to 66 software practitioners’ prioritized solutions and was able to obtain values similar to or greater than the values obtained by the practitioners. Moreover, the approach required only an average running time of 3 minutes to generate the prioritized solution set.

Description

Keywords

Citation

Endorsement

Review

Supplemented By

Referenced By

Copyright owned by the Saudi Digital Library (SDL) © 2025