🤖 AI Summary
This study addresses the lack of standardized guidance for effectively integrating technical debt management tools into existing CI/CD practices, which hinders the continuous control of technical debt. By systematically analyzing approximately 600,000 Travis CI configuration files and 50,000 auxiliary scripts from GitHub, the authors identify 3,684 pipelines that integrate technical debt management tools. Their findings reveal that such integrations predominantly rely on external script invocations and frequently exhibit configuration anti-patterns, notably the absence of feedback mechanisms. This work provides empirical evidence of current integration practices and prevalent anti-patterns, offering actionable insights to inform the design of better tooling and improve CI/CD integration strategies for technical debt management.
📝 Abstract
Managing technical debt (TD) is critical to ensure the sustainability of long-term software projects. However, the time and cost involved in technical debt management (TDM) often discourage practitioners from performing this activity consistently. Continuous Integration and Continuous Delivery (CI/CD) pipelines offer an opportunity to support TDM by embedding automated practices directly into the development workflow. Despite this potential, it remains unclear how TDM tools could be integrated into CI/CD pipelines, and we still lack established best practices for this process. To address this problem, the objective of this study is to understand how TDM tools have been used in CI/CD pipelines and also identify potential configuration anti-patterns. To this end, we conducted a large-scale mining software repository (MSR) study on GitHub. In total, we collected around 600,000 Travis CI configuration files and 50,000 supporting scripts, and identified 3,684 pipelines that contain at least one TDM tool. We applied descriptive statistics to analyze the prevalence of tools and anti-patterns, and our findings show that most tools are executed and integrated using an external script; in addition, \textit{Absent Feedback} is the most common configuration anti-pattern. We believe that researchers and practitioners can use the evidence of this study to further investigate how to improve both the tools that are integrated in CI/CD and the integration practices.