Title: Characterizing The Influence of Continuous Integration. Empirical Results from 250+ Open Source and Proprietary Projects,
Abstract: Continuous integration (CI) tools integrate code changes by automatically
compiling, building, and executing test cases upon submission of code changes.
Use of CI tools is getting increasingly popular, yet how proprietary projects
reap the benefits of CI remains unknown. To investigate the influence of CI on
software development, we analyze 150 open source software (OSS) projects, and
123 proprietary projects. For OSS projects, we observe the expected benefits
after CI adoption, e.g., improvements in bug and issue resolution. However, for
the proprietary projects, we cannot make similar observations. Our findings
indicate that only adoption of CI might not be enough to the improve software
development process. CI can be effective for software development if
practitioners use CI's feedback mechanism efficiently, by applying the practice
of making frequent commits. For our set of proprietary projects we observe
practitioners commit less frequently, and hence not use CI effectively for
obtaining feedback on the submitted code changes. Based on our findings we
recommend industry practitioners to adopt the best practices of CI to reap the
benefits of CI tools for example, making frequent commits.