The constantly evolving nature of technology in software, IT, and telecommunication is no doubt associated with emerging challenges regarding the ability to deliver software faster and with higher quality. The adoption of DevOps by many companies, in different application domains, in the last decade has resulted in major progress regarding both aspects. However, to reach the objectives of DevOps, a systematic approach to the continuous improvement of the different phases of the software delivery process needs to be established.
This thesis focuses on the improvement of the code review phase of the process based on an industrial case study provided by Kaloom. The overall objective is to investigate different statistical and machine learning techniques that can be used to extract and analyze behavior practices from the data recorded by GitLab during the Merge Request (MR) peer-review phase. For this purpose, we focus on three main research questions: RQ1) How does the Lead Time of MRs change over the 21 days of a sprint, RQ2) What are the behavior practices of software engineers during the sprint days, and RQ3) What are exceptions and outliers in MR data. Our main findings include that there is no correlation between the Lead Time and Size of MRs in the studied groups, that the groups with hardware tests have higher average Lead Time, and that there is a very weak Spearman correlation between the Lead Time of an MR and the day on which an MR was created or closed. Furthermore, through manual analysis of exception MRs, we observed that some MRs are commented after the merge and that these MRs are often associated with errors discovered later during the different product testing phases.
| Date | 25 Apr 2022 |
|---|
| Original language | American English |
|---|
| Awarding Institution | - École de technologie supérieure
|
|---|
| Supervisor | Francis Bordeleau (Supervisor) & Mohammed Sayagh (Co-supervisor) |
|---|
Mashari, S. (Author),
Bordeleau (Supervisor) &
Sayagh (Co-supervisor),
25 Apr 2022Student thesis: Master's thesis › Master in Engineering: Engineering