Team-related Features in Code Review Prediction Models
Eduardo Witter Ingrid Nunes Dietmar Jannach
Modern Code Review (MCR) is an informal tool-assisted quality assurance
practice. It relies on the asynchronous communication among the authors of code
changes and reviewers, who are developers that provide feedback. However, from
candidate developers, some are able to provide better feedback than others
given a particular context. The selection of reviewers is thus an important
task, which can benefit from automated support. Many approaches have been
proposed in this direction, using for example data from code review
repositories to recommend reviewers. In this paper, we propose the use of
team-related features to improve the performance of predictions that are
helpful to build code reviewer recommenders, with our target predictions being
the identification of reviewers that would participate in a review and the
provided amount of feedback. We evaluate the prediction power of these
features, which are related to code ownership, workload, and team relationship.
This evaluation was done by carefully addressing challenges imposed by the MCR
domain, such as temporal aspects of the dataset and unbalanced classes.
Moreover, given that it is currently unknown how much past data is needed for
building MCR prediction models with acceptable performance, we explore the
amount of past data used to build prediction models. Our results show that,
individually, features related to code ownership have the best prediction
power. However, based on feature selection, we conclude that all proposed
features together with lines of code can make the best predictions for both
reviewer participation and amount of feedback. Regarding the amount of past
data, the timeframes of 3, 6, 9, and 12 months of data produce similar results.
Therefore, models can be trained considering short timeframes, thus reducing
the computational costs with negligible impact in the prediction performance
...