摘要
代码审查是减少代码缺陷和提高软件质量的重要过程。在像GitHub这样的社交编码社区,由于每个人都可以提交Pull-Request,所以代码审查扮演着比以往更重要的角色,而且这个过程非常耗时。因此,寻找并推荐正确的评审人员来应对新兴的Pull-Request成为一项重要任务。然而,目前大部分的研究主要集中在评估人员是否参与,并没有对人员参与的类型进行区分。在本文中,我们开发了一个两层审阅人推荐模型,从技术和管理角度为GitHub项目中的Pull-Request(PR)推荐审阅人。对于第一层,我们根据混合推荐方法推荐合适的审阅人对目标PR进行审阅。对于第二层,在从第一层获得推荐结果之后,我们指定被推荐的审阅人是技术还是管理上参与审阅过程。我们在GitHub的两个热门项目上进行了实验,并使用2016年2月至2017年2月期间创建的PR来测试该方法。结果显示,我们的推荐模型的第一层比以前的工作表现得更好,第二层可以有效地区分参与类型。