Modeling Review History for Reviewer Recommendation:A Hypergraph Approach

04/20/2022
by   Guoping Rong, et al.
0

Modern code review is a critical and indispensable practice in a pull-request development paradigm that prevails in Open Source Software (OSS) development. Finding a suitable reviewer in projects with massive participants thus becomes an increasingly challenging task. Many reviewer recommendation approaches (recommenders) have been developed to support this task which apply a similar strategy, i.e. modeling the review history first then followed by predicting/recommending a reviewer based on the model. Apparently, the better the model reflects the reality in review history, the higher recommender's performance we may expect. However, one typical scenario in a pull-request development paradigm, i.e. one Pull-Request (PR) (such as a revision or addition submitted by a contributor) may have multiple reviewers and they may impact each other through publicly posted comments, has not been modeled well in existing recommenders. We adopted the hypergraph technique to model this high-order relationship (i.e. one PR with multiple reviewers herein) and developed a new recommender, namely HGRec, which is evaluated by 12 OSS projects with more than 87K PRs, 680K comments in terms of accuracy and recommendation distribution. The results indicate that HGRec outperforms the state-of-the-art recommenders on recommendation accuracy. Besides, among the top three accurate recommenders, HGRec is more likely to recommend a diversity of reviewers, which can help to relieve the core reviewers' workload congestion issue. Moreover, since HGRec is based on hypergraph, which is a natural and interpretable representation to model review history, it is easy to accommodate more types of entities and realistic relationships in modern code review scenarios. As the first attempt, this study reveals the potentials of hypergraph on advancing the pragmatic solutions for code reviewer recommendation.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/09/2018

CORRECT: Code Reviewer Recommendation in GitHub Based on Cross-Project and Technology Experience

Peer code review locates common coding rule violations and simple logica...
research
12/20/2019

CORE: Automating Review Recommendation for Code Changes

Code review is a common process that is used by developers, in which a r...
research
02/04/2022

Using Large-scale Heterogeneous Graph Representation Learning for Code Review Recommendations

Code review is an integral part of any mature software development proce...
research
08/23/2021

Pull Request Latency Explained: An Empirical Overview

Pull request latency evaluation is an essential application of effort ev...
research
07/12/2018

Predicting Usefulness of Code Review Comments using Textual Features and Developer Experience

Although peer code review is widely adopted in both commercial and open ...
research
03/31/2023

Code Reviewer Recommendation for Architecture Violations: An Exploratory Study

Code review is a common practice in software development and often condu...
research
07/09/2018

CORRECT: Code Reviewer Recommendation at GitHub for Vendasta Technologies

Peer code review locates common coding standard violations and simple lo...

Please sign up or login with your details

Forgot password? Click here to reset