The relationship between Continuous Integration and its effects on software quality outcomes
Continuous integration, software quality, empirical study
Continuous Integration (CI) is the practice of automating and improving the frequency of code integration (e.g.,dailybuilds).CI is often considered one of the key elements involved to support agile software teams. It helps to reduce the risks in software development by automatically building and testing a project codebase, which allows the team to fix broken builds immediately. The adoption of CI can help development teams to assess the quality of software systems. The potential benefits of adopting CI have brought the attention of researchers to study its advantages empirically.
Previous research has studied the impact of adopting CI on diverse aspects of software development. Despite the valuable advancements, there are still many assumptions in the community that remains empirically unexplored. Our work empirically investigates the software quality outcomes and their relationship with the adoption of CI. We run two empirical experiments that aim to answer the following open questions: (i) Does the adoption of CI share a relationship with the evolution of test code? (ii) The adherence to CI best practices is related to the degree of code quality?