Developer-Applied Accelerations in Continuous Integration: A Detection Approach and Catalog of Patterns
Mingyang Yin, Yutaro Kashiwa, Keheliya Gallaba, Mahmoud Alfadel, Yasutaka Kamei, Shane McIntosh
摘要
Continuous Integration (CI) provides a feedback loop for the change sets that developers produce. It is crucial that CI processes change sets quickly to provide timely feedback to developers and enable teams to release software updates rapidly. Prior work has made several advances in proposing automated approaches to speed up CI builds. While these approaches have been broadly adopted, CI platforms are flexible enough to enable teams to produce custom strategies to optimize or omit unnecessary or redundant tasks (i.e., developer-applied accelerations). Exploring developer-applied accelerations and identifying recurrent patterns within them may enable broader reuse and can inform recommendations to enhance software development efficiency. In this paper, we set out to detect and catalog developer-applied CI accelerations. First, we propose clustering, rule-based, and ensemble approaches to detect developer-applied accelerations in a dataset of 2,896 CircleCI build jobs, which achieve an F1-score of up to 0.64. We then conduct a qualitative analysis of the detected developer-applied accelerations to create a detailed catalog of 14 patterns spanning four categories of purposes, 16 patterns spanning five categories of mechanisms, and three categories of magnitudes, from which we infer actionable implications for both the consumers and the providers of CI platforms. Developers can leverage our identified patterns to audit their CI pipelines for inefficiencies, such as redundant invocations of costly external services and rebuilds triggered by minor corrections. Additionally, developers can use our identified patterns to create templates that detect non-impactful changes to specific files, such as .yml and .json.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper6
- A cost-efficient approach to building in continuous integrationXianhao Jin, Francisco ServantICSE 2020 · 被引用 34 次
- BUILDFAST: History-Aware Build Outcome Prediction for Fast Feedback and Reduced Cost in Continuous IntegrationBihuan Chen, Linlin Chen, Chen Zhang, Xin PengASE 2020 · 被引用 32 次
- Lessons from Eight Years of Operational Data from a Continuous Integration Service: An Exploratory Case Study of CircleCIKeheliya Gallaba, Maxime Lamothe, Shane McIntoshICSE 2022 · 被引用 28 次
- RavenBuild: Context, Relevance, and Dependency Aware Build Outcome PredictionGengyi Sun, Sarra Habchi, Shane McIntoshFSE 2024 · 被引用 8 次
- Code Review of Build System Specifications: Prevalence, Purposes, Patterns, and PerceptionsMahtab Nejati, Mahmoud Alfadel, Shane McIntoshICSE 2023 · 被引用 8 次
相关 Paper
- BuildSonic: Detecting and Repairing Performance-Related Configuration Smells for Continuous Integration BuildsChen Zhang, Bihuan Chen, Junhao Hu, Xin Peng 等ASE 2022 · 被引用 11 次
- Rechecking Recheck Requests in Continuous Integration: An Empirical Study of OpenStackYelizaveta Brus, Rungroj Maipradit, Earl T. Barr, Shane McIntoshASE 2025 · 被引用 1 次
- Resource Usage and Optimization Opportunities in Workflows of GitHub ActionsIslem Bouzenia, Michael PradelICSE 2024 · 被引用 15 次
- Configuration smells in continuous delivery pipelines: a linter and a six-month study on GitLabCarmine Vassallo, Sebastian Proksch, Anna Jancso, Harald C. Gall 等FSE 2020 · 被引用 43 次
- Towards language-independent Brown Build DetectionDoriane Olewicki, Mathieu Nayrolles, Bram AdamsICSE 2022 · 被引用 17 次
