Prediction of design impactful changes in modern code review using machine learning
| dc.contributor.advisor | Perera, I | |
| dc.contributor.author | Amirthlingam, P | |
| dc.date.accept | 2024 | |
| dc.date.accessioned | 2025-09-25T09:50:58Z | |
| dc.date.issued | 2024 | |
| dc.description.abstract | In today’s era most of the companies are using modem code review as one of the most useful technique to monitor the software changes continuously and to improve the software quality. The major purpose for this activity is to detect the design impactful changes as soon as possible that prevent the design degrading of the software after each and every code review. Anyhow, the modem code review techniques are not enough to prevent the design degradation even after the degradation symptoms results in the rejection of changes done in the code. The design degradation occurs when smells occur due to the symptoms of bad structural decisions that occurs by a change. Technical and Social features may influence the design degradation when it comes to code reviews. There is no any research that investigates the benefits of the prediction of design impactful changes to the stakeholders of code review using the social and technical features. Using the data provided by the Code Review Open Platform (CROP), an open-source dataset that links code review data to software changes I have used a machine learning approach to predict the design impactful changes with social and technical features in modem code review. At the end I have evaluated the machine learning algorithm and extracted number of social and technical features and assessed how those features influences the code review. According to the literature review I have chosen Gradient Boosting algorithm. Using technical features leads to more accurate predictions. Anyhow, the social features that are available before the start of a review also be a good aspect for a highly precise prediction. Therefore we can say that technical and social prediction models can be used in the inspection of the changes done in software. Expanding on the use of modem code review techniques to detect design impactful changes, the limitations of these techniques, the need for incorporating social and technical features, and the implementation of machine learning algorithms for prediction. Modem code review techniques are widely adopted by companies to monitor software changes continuously and enhance software quality. One of the primary objectives of code review is to detect design impactful changes promptly to prevent software design degradation after each code review iteration. Despite the effectiveness of modem code review, it may not always suffice to prevent design degradation. Even when changes exhibiting degradation symptoms are rejected during code review, design degradation can still occur. This degradation typically arises from poor structural decisions manifested as code smells introduced by changes. Both teclmical and social factors play significant roles in influencing design degradation during code review. Technical features encompass aspects like code complexity, cohesion, and coupling, while social features include factors such as developer experience, communication dynamics among team members, and team collaboration. To address the challenge of predicting design impactful changes, machine learning approaches are employed. Utilizing the Code Review Open Platform (CROP) dataset, which links code review data to software changes, machine learning algorithms are trained to predict design impactful changes based on a combination of social and technical features. Among various machine learning algorithms, Gradient Boosting is chosen for its effectiveness in handling complex datasets and producing accurate predictions. Through rigorous evaluation, it's found that incorporating technical features leads to more precise predictions. However, social features available before the start of a code review also prove to be valuable in enhancing prediction accuracy. In conclusion, the integration of social and technical features into machine learning models facilitates more accurate prediction of design impactful changes during code review. By leveraging both technical and social aspects, stakeholders can gain insights into the potential impact of software changes on design quality, thereby improving the overall effectiveness of code review processes. | |
| dc.identifier.accno | TH5653 | |
| dc.identifier.citation | Amirthlingam, P. (2024). Prediction of design impactful changes in modern code review using machine learning [Master’s theses, University of Moratuwa]. Institutional Repository University of Moratuwa. https://dl.lib.uom.lk/handle/123/24216 | |
| dc.identifier.degree | MSc in Computer Science | |
| dc.identifier.department | Department of Computer Science & Engineering | |
| dc.identifier.faculty | Engineering | |
| dc.identifier.uri | https://dl.lib.uom.lk/handle/123/24216 | |
| dc.language.iso | en | |
| dc.subject | MODERN CODE REVIEW | |
| dc.subject | MACHINE LEARNING | |
| dc.subject | DESIGN DEGRADATION | |
| dc.subject | COMPUTER SCIENCE-Dissertation | |
| dc.subject | COMPUTER SCIENCE AND ENGINEERING-Dissertation | |
| dc.subject | MSc in Computer Science | |
| dc.title | Prediction of design impactful changes in modern code review using machine learning | |
| dc.type | Thesis-Abstract |
Files
Original bundle
1 - 3 of 3
Loading...
- Name:
- TH5653-1.pdf
- Size:
- 522.38 KB
- Format:
- Adobe Portable Document Format
- Description:
- Pre-text
Loading...
- Name:
- TH5653-2.pdf
- Size:
- 292.07 KB
- Format:
- Adobe Portable Document Format
- Description:
- Post-text
Loading...
- Name:
- TH5653.pdf
- Size:
- 5.3 MB
- Format:
- Adobe Portable Document Format
- Description:
- Full-thesis
License bundle
1 - 1 of 1
Loading...
- Name:
- license.txt
- Size:
- 1.71 KB
- Format:
- Item-specific license agreed upon to submission
- Description:
