Using a Context-Aware Approach to Recommend Code Reviewers: Findings from an Industrial Case StudySEIP
Code reviewing is a commonly used practice in software development. It refers to the process of reviewing new code changes before they are merged with the code base. However, to perform the review, developers are mostly assigned manually to code changes. This may lead to problems such as: a time-consuming selection process, limited pool of known candidates and risk of over-allocation of a few reviewers. To address the above problems, we developed Carrot, a machine learning-based tool to recommend code reviewers. We conducted an improvement case study at Ericsson. We evaluated Carrot using a mixed approach. we evaluated the prediction accuracy using historical data and the metrical Mean Reciprocal Rank (MRR). Furthermore, we deployed the tool in one Ericsson project and evaluated how adequate the recommendations were from the point of view of the tool users and the recommended reviewers. We also asked the opinion of senior developers about the usefulness of the tool. The results show that Carrot can help identify relevant non-obvious reviewers and be of great assistance to new developers. However, there were mixed opinions on Carrot’s ability to assist with workload balancing and the decrease code review lead time.
Tue 7 JulDisplayed time zone: (UTC) Coordinated Universal Time change
08:05 - 09:05 | I6-Empirical Studies and RequirementsJournal First / Software Engineering in Practice / Technical Papers at Silla Chair(s): Ita Richardson Lero - The Irish Software Research Centre and University of Limerick | ||
08:05 8mTalk | What do Programmers Discuss about Deep Learning FrameworksJ1 Journal First Junxiao Han Zhejiang University, Emad Shihab Concordia University, Zhiyuan Wan Zhejiang University, Shuiguang Deng Zhejiang University, Xin Xia Monash University | ||
08:13 12mTalk | Detection of Hidden Feature Requests from Massive Chat Messages via Deep Siamese NetworkTechnical Technical Papers Lin Shi ISCAS, Mingzhe Xing ISCAS, Mingyang Li ISCAS, Yawen Wang ISCAS, Shoubin Li ISCAS, Qing Wang Institute of Software, Chinese Academy of Sciences | ||
08:25 8mTalk | Recognizing lines of code violating company-specific coding guidelines using machine learningJ1 Journal First Miroslaw Ochodek Poznan University of Technology, Regina Hebig Chalmers University of Technology & University of Gothenburg, Wilhelm Meding Ericsson, Gert Frost Grundfos, Miroslaw Staron University of Gothenburg | ||
08:33 12mTalk | Context-aware In-process Crowdworker RecommendationTechnical Technical Papers Junjie Wang Institute of Software, Chinese Academy of Sciences, Ye Yang Stevens institute of technology, Song Wang York University, Yuanzhe Hu Institute of Software, Chinese Academy of Sciences, Dandan Wang Institute of Software, Chinese Academy of Sciences, Qing Wang Institute of Software, Chinese Academy of Sciences | ||
08:45 12mTalk | Using a Context-Aware Approach to Recommend Code Reviewers: Findings from an Industrial Case StudySEIP Software Engineering in Practice Anton Strand Ericsson AB, Markus Gunnarsson Ericsson AB, Ricardo Britto Ericsson / Blekinge Institute of Technology, Muhammad Usman Blekinge Institute of Technology |