NUST Institutional Repository

Management and Recommendation of Code Review Using Multi-Objective Optimization Algorithm

Show simple item record

dc.contributor.author Anwaar, Zaeem
dc.date.accessioned 2023-07-24T07:33:11Z
dc.date.available 2023-07-24T07:33:11Z
dc.date.issued 2022
dc.identifier.other 320966
dc.identifier.uri http://10.250.8.41:8080/xmlui/handle/123456789/34957
dc.description Supervisor: Dr. Wasi Haider Butt en_US
dc.description.abstract Background: Software code review is a one of the major and important activity in modern software development and evolution. To improve software quality, identify and remove defects before integration, code review is considered as efficient and effective practice. Code reviewers having right expertise, experience and apt amount of knowledge with the code being reviewed leads to successful code processes, fewer bugs and less maintenance cost. Aim & Objective: Usually existing studies identify code reviewers based on one or two objectives i.e., expertise, availability etc. to review pull requests. With the growing size of distributed development teams, picking suitable reviewers is a challenging task. However, due to less resources and shorter deadlines, the management of code reviews and appropriate recommendation of code reviewers based on three objectives consecutively is an ambitious task to be considered as aim of this thesis. Methodology: This thesis addresses the formulation for managing and recommending code reviewers based on multi conflicting objectives (i.e., availability, expertise and collaboration) simultaneously. ‘NSGA-III’ is used as optimization algorithm to find the most suitable reviewers while keeping expertise and availability ratio high and less collaboration between reviewers and developers. Results and Conclusion: The results were implemented and validated on three (medium to large size) open-source projects named as LibreOffice, Qt and OpenStack. We calculated precision, recall, MRR, accuracy for all 3 projects on average. The results from our proposed approach accurately recommended the code reviewers with the precision up to 80%, 86% of recall, 82% mean reciprocal rank and 84% average accuracy by improving state-of-the-art. We also compared the experimental sets between NSGA-III and NSGA-II in terms of finding mean fitness and execution time of both algorithms. As a result, NSGA-III recommended the reviewers in less execution time and better fitness values in comparison to NSGA-II in all experimental sets. The proposed approach could be practical to MCR in order to help developers while recommending suitable code-reviewers in less time and resources to speed up the review process. en_US
dc.language.iso en en_US
dc.publisher College of Electrical & Mechanical Engineering (CEME), NUST en_US
dc.subject Keywords: Code-Reviewer Recommendation, Modern Code Review, Modern Software Development, Multi-Objective Algorithm, NSGA-III en_US
dc.title Management and Recommendation of Code Review Using Multi-Objective Optimization Algorithm en_US
dc.type Thesis en_US


Files in this item

This item appears in the following Collection(s)

  • MS [441]

Show simple item record

Search DSpace


Advanced Search

Browse

My Account