A Deep Dive into Continuous Integration Monitoring Practices
continuous integration, continuous delivering, DevOps, empirical software engineering, mining software repositories
One of the principal activities in software development is monitoring, as it plays a vital role in verifying the proper implementation of processes, identifying errors, and uncovering opportunities for improvement. Continuous Integration (CI) covers a set of widely adopted sub-practices that enhance software development. However, there are indications that developers may not adequately monitor all CI sub-practices. In this thesis, we have delved deep into the ocean of CI practice monitoring. Our goal was to find out how this monitoring is conducted, show the advantages of monitoring CI practices, and highlight the challenges that must be overcome. We conducted a series of studies to analyze the impact of specific CI practices on productivity and quality, as well as the importance given to these practices by developers and the support provided by popular CI servers. We still intend to conclude this thesis by carrying out a case study, evaluating the current state of CI monitoring within organizations. Our goal is to investigate whether this monitoring practice assists them in identifying problems and enhancing the performance in the context of CI adoption.