Tracing the Lifecycle of Architecture Technical Debt in Software Systems: A Dependency Approach

📅 2025-01-26
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This study investigates the evolution of architectural technical debt (ATD) across the software lifecycle and its impact on maintainability. Method: Leveraging self-admitted technical debt (SATD) data, we apply fan-in/fan-out dependency metrics, Mann–Whitney U tests, and Cohen’s *d* effect-size analysis to quantify structural changes before and after ATD repayment. Contribution/Results: We present the first empirical evidence that ATD repayment—while improving short-term code quality—exacerbates architectural centralization: average fan-in increases by 57.5% and fan-out by 26.7%. Files associated with ATD exhibit significantly lower modification frequency than non-ATD files, with changes heavily concentrated in high-dependency regions. Our findings demonstrate that reliance on a single dependency metric is insufficient for assessing ATD impact; instead, integrated multi-dimensional measurement—spanning structural, semantic, and evolutionary dimensions—is essential. This work provides critical empirical grounding and methodological guidance for ATD governance.

Technology Category

Application Category

📝 Abstract
Architectural technical debt (ATD) represents trade-offs in software architecture that accelerate initial development but create long-term maintenance challenges. ATD, in particular when self-admitted, impacts the foundational structure of software, making it difficult to detect and resolve. This study investigates the lifecycle of ATD, focusing on how it affects i) the connectivity between classes and ii) the frequency of file modifications. We aim to understand how ATD evolves from introduction to repayment and its implications on software architectures. Our empirical approach was applied to a dataset of SATD from various software artifacts. We isolated ATD instances, filtered for architectural indicators, and calculated dependencies at different lifecycle stages using FAN-IN and FAN-OUT metrics. Statistical analyses, including the Mann-Whitney U test and Cohen's d, were used to assess the significance and effect size of connectivity and dependency changes over time. We observed that ATD repayment increased class connectivity, with FAN-IN increasing by 57.5% on average and FAN-OUT by 26.7%, suggesting a shift toward centralization and increased architectural complexity post-repayment. Moreover, ATD files were modified less frequently than Non-ATD files, with changes accumulated in high-dependency portions of the code. Our study shows that resolving ATD improves software quality in the short-term, but can make the architecture more complex by centralizing dependencies. Also, even if dependency metrics (like FAN-IN and FAN-OUT) can help understand the impact of ATD, they should be combined with other measures to capture other effects of ATD on software maintainability.
Problem

Research questions and friction points this paper is trying to address.

Architectural Technical Debt
Software Complexity
Code Modification Frequency
Innovation

Methods, ideas, or system contributions that make the work stand out.

Architectural Technical Debt
Software Structure Analysis
Dependency Metrics
🔎 Similar Papers
No similar papers found.
E
E. Sutoyo
Department of Information Systems, Telkom University, Bandung, Indonesia; Bernoulli Institute, University of Groningen, Groningen, The Netherlands
P
P. Avgeriou
Bernoulli Institute, University of Groningen, Groningen, The Netherlands
Andrea Capiluppi
Andrea Capiluppi
Associate Professor in Software Engineering, University of Groningen, the Netherlands
Open Source softwaresoftware reuseonline communitiessoftware evolution