Software Engineering Empirical Research Radar

Usage, costs, and benefits of continuous integration in open-source projects

Paper detail page with source attribution and mobile-friendly PDF reading.

Venue / Year

Other 2016

Topics

Unclassified

DOI: 10.1145/2970276.2970358

Summary

Continuous integration (CI) systems automate the compilation, building, and testing of software. Despite CI rising as a big success story in automated software engineering, it has received almost no attention from the research community. For example, how widely is CI used in practice, and what are some costs and benefits associated with CI? Without answering such questions, developers, tool builders, and researchers make decisions based on folklore instead of data. In this paper, we use three complementary methods to study the usage of CI in open-source projects. To understand which CI systems developers use, we analyzed 34,544 open-source projects from GitHub. To understand how developers use CI, we analyzed 1,529,291 builds from the most commonly used CI system. To understand why projects use or do not use CI, we surveyed 442 developers. With this data, we answered several key questions related to the usage, costs, and benefits of CI. Among our results, we show evidence that supports the claim that CI helps projects release more often, that CI is widely adopted by the most popular projects, as well as finding that the overall percentage of projects using CI continues to grow, making it important and timely to focus more research on CI.

Read PDF

Open / Download PDF Original Source
转载自原公开来源,仅供学术研究阅读;请以原来源为准。