[发明专利]一种开源软件开发中Pull Request的评审者推荐方法有效
申请号: | 202010338549.7 | 申请日: | 2020-04-26 |
公开(公告)号: | CN111523037B | 公开(公告)日: | 2023-08-04 |
发明(设计)人: | 赵海燕;李敏 | 申请(专利权)人: | 上海理工大学 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06F16/9536 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 孙永申 |
地址: | 200093 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 开发 pull request 评审 推荐 方法 | ||
本发明涉及一种开源软件开发中Pull Request的评审者推荐方法,该推荐方法包括以下步骤:步骤1:提取计算Pull Request与评审者的相关性因素;步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐。该方法考虑了评审者与Pull Request内容的兴趣相关性、活跃度、社交关系影响程度及文件路径相关性四个方面的因素,通过贝叶斯个性化排序方法对四方面因素进行个性化加权,从而为Pull Request推荐合适的评审者。
技术领域
本发明涉及计算机技术领域,尤其是涉及一种开源软件开发中Pull Request的评审者推荐方法。
背景技术
Pull Request是开源软件社区大部分开发者提供代码的主要方式,为了保证软件项目的质量,对Pull Request评审是开源软件开发中必不可少的一部分。在Pull Request评审中,自动推荐合适的代码评审人员,能够有效为代码评审降低成本和节约时间。
Pull Request的评审者推荐受到了广泛的关注。目前的方法以粗粒度的模式对代码评审人员进行推荐。例如,基于文件路径相似度、基于社交关系、基于信息检索及基于活跃度等进行评审者推荐。这些方法归根到底,是以不同方面的相似度作为推荐的最终条件,但并没有考虑到不同候选评审用户在选择Pull Request进行评审时有不同的选择偏好。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种开源软件开发中Pull Request的评审者推荐方法,在实际应用中,将相关因素与评审者本身的选择偏好相结合,有助于提高推荐效果,
本发明的目的可以通过以下技术方案来实现:
一种开源软件开发中Pull Request的评审者推荐方法,该推荐方法包括以下步骤:
步骤1:提取计算Pull Request与评审者的相关性因素;
步骤2:基于历史数据利用贝叶斯个性化排序模型优化确定每个评审者于步骤1中的各个相关性因素的权重;
步骤3:对于当前Pull Request及每个评审者,利用各个相关性因素基于各自权重的得分进行加权,按照加权后的分数排序并进行推荐。
进一步地,所述的步骤1包括以下分步骤:
步骤101:提取计算Pull Request的内容与评审者的兴趣相关性;
步骤102:提取计算评审者的当前活跃度;
步骤103:提取计算开发人员与Pull Request提交人员的社交相关性;
步骤104:提取计算当前Pull Request所涉及的文件路径与开发人员之前评审过的Pull Request的文件路径的相似性。
进一步地,所述的步骤101中的Pull Request的内容与评审者的兴趣相关性,其计算公式为:
式中,SimCont(Revieweri,pnew)为Pull Request的内容与评审者的兴趣相关性,PRi为第i个评审者Revieweri以前审核过的Pull Request集合,similarity(pnew,p')为开发人员之前评审过的Pull Request与目标Pull Request之间的相似性。
进一步地,所述的开发人员之前评审过的Pull Request与目标Pull Request之间的相似性,其计算公式为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海理工大学,未经上海理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010338549.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种释放超低频波电路的设计方法
- 下一篇:柔性机壳组件与电子设备