Support for Decision-Making in Assigning Code Reviewers
摘要
The modern code review is actively used and developed in connection with standard at the present time practice for application of the distributed software development in IT-companies. In this kind of review, a special software tool, supporting the entire process from submitting a change request by a code developer to approving this request by code reviewers with updating the project repository or rejecting the request, is utilized. A crucial point of the review is the procedure of assigning code reviewers to change requests submitted. On how well the assignment will be done depends not only the code review result but, subsequently, also the IT-project itself: its timing and software development quality. The code reviewers’ assignment task becomes even more complex when projects are large-scale and can involve hundreds and thousands of developers. In them, numerous requests from developers are created concomitantly. Regardless of the fact that at the current time, a question of assigning code reviewers is under active study, the subject of optimal selection (when the problem solution is a list of code reviewers on each submitted change request to achieve maximum total compliance) and accounting different common reviewers’ features, for example, the experience as a developer and experience as a reviewer, is poorly explored. The suggested approach to decision-making support in assigning code reviewers is developed to resolve the issue. The operability of this approach is confirmed by the experiment using the generated dataset.