|国家预印本平台
首页|Build Code Needs Maintenance Too: A Study on Refactoring and Technical Debt in Build Systems

Build Code Needs Maintenance Too: A Study on Refactoring and Technical Debt in Build Systems

Build Code Needs Maintenance Too: A Study on Refactoring and Technical Debt in Build Systems

来源:Arxiv_logoArxiv
英文摘要

In modern software engineering, build systems play the crucial role of facilitating the conversion of source code into software artifacts. Recent research has explored high-level causes of build failures, but has largely overlooked the structural properties of build files. Akin to source code, build systems face technical debt challenges that hinder maintenance and optimization. While refactoring is often seen as a key tool for addressing technical debt in source code, there is a significant research gap regarding the specific refactoring changes developers apply to build code and whether these refactorings effectively address technical debt. In this paper, we address this gap by examining refactorings applied to build scripts in open-source projects, covering the widely used build systems of Gradle, Ant, and Maven. Additionally, we investigate whether these refactorings are used to tackle technical debts in build systems. Our analysis was conducted on \totalCommits examined build-file-related commits. We identified \totalRefactoringCategories build-related refactorings, which we divided into \totalCategories main categories. These refactorings are organized into the first empirically derived taxonomy of build system refactorings. Furthermore, we investigate how developers employ these refactoring types to address technical debts via a manual commit-analysis and a developer survey. In this context, we identified \totalTechnicalDebts technical debts addressed by these refactorings and discussed their correlation with the different refactorings. Finally, we introduce BuildRefMiner, an LLM-powered tool leveraging GPT-4o to automate the detection of refactorings within build systems. We evaluated its performance and found that it achieves an F1 score of \toolFoneScore across all build systems.

Anwar Ghammam、Dhia Elhaq Rzig、Mohamed Almukhtar、Rania Khalsi、Foyzul Hassan、Marouane Kessentini

计算技术、计算机技术

Anwar Ghammam,Dhia Elhaq Rzig,Mohamed Almukhtar,Rania Khalsi,Foyzul Hassan,Marouane Kessentini.Build Code Needs Maintenance Too: A Study on Refactoring and Technical Debt in Build Systems[EB/OL].(2025-04-02)[2025-06-03].https://arxiv.org/abs/2504.01907.点此复制

评论