English
Related papers

Related papers: Does Using Bazel Help Speed Up Continuous Integrat…

200 papers

Continuous Integration (CI) provides early feedback by automatically building software, but long build durations can hinder developer productivity. CI services use caching to speed up builds by reusing infrequently changing artifacts, yet…

Software Engineering · Computer Science 2026-03-20 Taher A. Ghaleb , Daniel Alencar da Costa , Ying Zou

Since developers invoke the build system frequently, its performance can impact productivity. Modern artifact-based build tools accelerate builds, yet prior work shows that teams may abandon them for alternatives that are easier to…

Software Engineering · Computer Science 2025-10-24 Gareema Ranjan , Mahmoud Alfadel , Gengyi Sun , Shane McIntosh

Continuous Integration (CI) is a development practice where developers frequently integrate code into a common codebase. After the code is integrated, the CI server runs a test suite and other tools to produce a set of reports (e.g., output…

Software Engineering · Computer Science 2021-07-20 Thomas Durieux , Claire Le Goues , Michael Hilton , Rui Abreu

Automated builds are integral to the Continuous Integration (CI) software development practice. In CI, developers are encouraged to integrate early and often. However, long build times can be an issue when integrations are frequent. This…

Software Engineering · Computer Science 2017-12-20 Ekaba Bisong , Eric Tran , Olga Baysal

Continuous Integration (CI) is a software development practice that builds and tests software frequently (e.g., at every push). One main motivator to adopt CI is the potential to deliver software functionalities more quickly than not using…

Software Engineering · Computer Science 2023-05-29 João Helis Bernardo , Daniel Alencar da Costa , Uirá Kulesza , Christoph Treude

Continuous Integration (CI) is a cornerstone of modern software development. However, while widely adopted in traditional software projects, applying CI practices to Machine Learning (ML) projects presents distinctive characteristics. For…

Continuous Integration (CI) consists of an automated build process involving continuous compilation, testing, and packaging of the software system. While CI comes up with several advantages related to quality and time to delivery, CI also…

Software Engineering · Computer Science 2025-08-26 Henri Aïdasso , Mohammed Sayagh , Francis Bordeleau

Continuous Integration (CI) is a well-established practice in traditional software development, but its nuances in the domain of Machine Learning (ML) projects remain relatively unexplored. Given the distinctive nature of ML development,…

Software Engineering · Computer Science 2024-03-15 João Helis Bernardo , Daniel Alencar da Costa , Sérgio Queiroz de Medeiros , Uirá Kulesza

Background: Much research has been conducted to investigate the impact of Continuous Integration (CI) on the productivity and quality of open-source projects. Most of studies have analyzed the impact of adopting a CI server service (e.g,…

Software Engineering · Computer Science 2022-08-05 Jadson Santos , Daniel Alencar da Costa , Uirá Kulesza

Continuous Integration (CI) systems often run many builds concurrently. In this setting, a legitimate build failure may not be caused by the code push that triggered it. Such unrelated build failures can waste developer effort because…

Software Engineering · Computer Science 2026-05-08 Andie Huang , Daniel Alencar da Costa , Grant Dick , Mariam El Mezouar

Background: Continuous Integration (CI) systems are now the bedrock of several software development practices. Several tools such as TravisCI, CircleCI, and Hudson, that implement CI practices, are commonly adopted by software engineers.…

Software Engineering · Computer Science 2019-07-04 Wagner Felidré , Leonardo Furtado , Daniel da Costa , Bruno Cartaxo , Gustavo Pinto

In 2006, Fowler and Foemmel defined ten core Continuous Integration (CI) practices that could increase the speed of software development feedback cycles and improve software quality. Since then, these practices have been widely adopted by…

Software Engineering · Computer Science 2021-03-11 Omar Elazhary , Colin Werner , Ze Shi Li , Derek Lowlind , Neil Ernst , Margaret-Anne Storey

Continuous integration (CI) is a widely used practice in modern software engineering. Unfortunately, it is also an expensive practice - Google and Mozilla estimate their CI systems in millions of dollars. There are a number of techniques…

Software Engineering · Computer Science 2021-02-15 Xianhao Jin , Francisco Servant

Continuous Integration (CI) encompasses a set of widely adopted practices that enhance software development. However, there are indications that developers may not adequately monitor CI practices. Hence, this paper explores developers'…

Software Engineering · Computer Science 2025-06-10 Jadson Santos , Daniel Alencar da Costa , Shane McIntosh , Uirá Kulesza

Continuous integration at scale is costly but essential to software development. Various test optimization techniques including test selection and prioritization aim to reduce the cost. Test batching is an effective alternative, but…

Software Engineering · Computer Science 2023-08-28 Emad Fallahzadeh , Amir Hossein Bavand , Peter C. Rigby

The constant demand for new features and bug fixes are forcing software projects to shorten cycles and deliver updates ever faster, while sustaining software quality. The availability of inexpensive, virtualized, cloud-computing has helped…

Software Engineering · Computer Science 2016-06-03 Yue Yu , Bogdan Vasilescu , Huaimin Wang , Vladimir Filkov , Premkumar Devanbu

Google has a monolithic codebase with tens of millions build targets. Each build target specifies the information that is needed to build a software artifact or run tests. It is common to execute a subset of build targets at each revision…

Software Engineering · Computer Science 2021-02-19 Kaiyuan Wang , Daniel Rall , Greg Tener , Vijay Gullapalli , Xin Huang , Ahmed Gad

Fuzzing has proven to be a fundamental technique to automated software testing but also a costly one. With the increased adoption of CI/CD practices in software development, a natural question to ask is `What are the best ways to integrate…

Software Engineering · Computer Science 2022-06-08 Thijs Klooster , Fatih Turkmen , Gerben Broenink , Ruben ten Hove , Marcel Böhme

Continuous Integration (CI) implies that a whole developer team works together on the mainline of a software project. CI systems automate the builds of a software. Sometimes a developer checks in code, which breaks the build. A broken build…

Software Engineering · Computer Science 2017-03-30 Klérisson V. R. Paixão , Crícia Z. Felício , Fernanda M. Delfim , Marcelo de A. Maia

Continuous Integration (CI) build failures could significantly impact the software development process and teams, such as delaying the release of new features and reducing developers' productivity. In this work, we report on an empirical…

Software Engineering · Computer Science 2024-05-15 Yang Hong , Chakkrit Tantithamthavorn , Jirat Pasuksmit , Patanamon Thongtanunam , Arik Friedman , Xing Zhao , Anton Krasikov
‹ Prev 1 2 3 10 Next ›