CODE reuse in practice: Benefiting or harming technical debt

Daniel Feitosa*, Apostolos Ampatzoglou, Antonios Gkortzis, Stamatia Bibi, Alexander Chatzigeorgiou

*Corresponding author for this work

    Research output: Contribution to journalArticleAcademicpeer-review

    2 Citations (Scopus)

    Abstract

    During the last years the TD community is striving to offer methods and tools for reducing the amount of TD, but also understand the underlying concepts. One popular practice that still has not been investigated in the context of TD, is software reuse. The aim of this paper is to investigate the relation between white-box code reuse and TD principal and interest. In particular, we target at unveiling if the reuse of code can lead to software with better levels of TD. To achieve this goal, we performed a case study on approximately 400 OSS systems, comprised of 897 thousand classes, and compare the levels of TD for reused and natively-written classes. The results of the study suggest that reused code usually has less TD interest; however, the amount of principal in them is higher. A synthesized view of the aforementioned results suggest that software engineers shall opt to reuse code when necessary, since apart from the established reuse benefits (i.e., cost savings, increased productivity, etc.) are also getting benefits in terms of maintenance. Apart from understanding the phenomenon per se, the results of this study provide various implications to research and practice.

    Original languageEnglish
    Article number110618
    Number of pages12
    JournalJournal of Systems and Software
    Volume167
    Early online date23-May-2020
    DOIs
    Publication statusPublished - Sep-2020

    Keywords

    • Case study
    • Reuse
    • Technical debt
    • SOFTWARE REUSE
    • MAINTAINABILITY
    • PRODUCTIVITY
    • QUALITY
    • PERCEPTION
    • METRICS

    Cite this