Code reviews are popular in both industrial and open source projects. The benefits of code reviews are widely recognized and include better code quality and lower likelihood of introducing bugs. However, since code review is a manual activity it comes at the cost of spending developers' time on reviewing their teammates' code. Our goal is to make the first step towards partially automating the code review process, thus, possibly reducing the manual costs associated with it. We focus on both the contributor and the reviewer sides of the process, by training two different Deep Learning architectures. The first one learns code changes performed by developers during real code review activities, thus providing the contributor with a revised version of her code implementing code transformations usually recommended during code review before the code is even submitted for review. The second one automatically provides the reviewer commenting on a submitted code with the revised code implementing her comments expressed in natural language. The empirical evaluation of the two models shows that, on the contributor side, the trained model succeeds in replicating the code transformations applied during code reviews in up to 16% of cases. On the reviewer side, the model can correctly implement a comment provided in natural language in up to 31% of cases. While these results are encouraging, more research is needed to make these models usable by developers.


翻译:守则审查的好处在工业和开放源码项目中都很受欢迎。 守则审查的好处在工业和开放源码项目中都得到广泛承认, 包括更好的守则质量和降低引入错误的可能性。 但是, 守则审查是一项人工活动, 其成本是开发者花时间审查队友守则。 我们的目标是采取第一步, 使守则审查过程部分自动化, 从而降低与守则有关的手册费用。 我们通过培训两个不同的深层学习架构, 以这一过程的提供者和审查者为重点。 第一次是学习开发者在实际代码审查活动期间进行的守则修改, 从而向提供其守则的提供者提供订正版, 实施通常在守则审查期间建议的守则变换的守则。 第二个是自动向审查者提供关于已提交的守则的评论, 订正的守则以自然语言执行她的评论, 从而降低与守则有关的手册有关的手册费用。 对两种模式的经验评价表明, 在贡献者方面,经过训练的模型成功地复制了在实际代码审查过程中应用的守则变换码, 高达16% 。 在审查者方面, 模型可以正确执行自然语言中提供的评论, 。 这些研究的结果需要到31 % 这些案例。 。

0
下载
关闭预览

相关内容

Automator是苹果公司为他们的Mac OS X系统开发的一款软件。 只要通过点击拖拽鼠标等操作就可以将一系列动作组合成一个工作流,从而帮助你自动的(可重复的)完成一些复杂的工作。Automator还能横跨很多不同种类的程序,包括:查找器、Safari网络浏览器、iCal、地址簿或者其他的一些程序。它还能和一些第三方的程序一起工作,如微软的Office、Adobe公司的Photoshop或者Pixelmator等。
专知会员服务
26+阅读 · 2021年7月11日
专知会员服务
52+阅读 · 2020年9月7日
【ICML2020】多视角对比图表示学习,Contrastive Multi-View GRL
专知会员服务
79+阅读 · 2020年6月11日
专知会员服务
60+阅读 · 2020年3月19日
100+篇《自监督学习(Self-Supervised Learning)》论文最新合集
专知会员服务
164+阅读 · 2020年3月18日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
Google代码Code Review实践指南发布
Python程序员
3+阅读 · 2019年9月7日
计算机 | 国际会议信息5条
Call4Papers
3+阅读 · 2019年7月3日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
无监督元学习表示学习
CreateAMind
27+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
医学 | 顶级SCI期刊专刊/国际会议信息4条
Call4Papers
5+阅读 · 2018年12月28日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
人工智能 | 国际会议截稿信息9条
Call4Papers
4+阅读 · 2018年3月13日
MoCoGAN 分解运动和内容的视频生成
CreateAMind
18+阅读 · 2017年10月21日
Arxiv
0+阅读 · 2021年7月7日
Arxiv
20+阅读 · 2020年6月8日
Video-to-Video Synthesis
Arxiv
9+阅读 · 2018年8月20日
VIP会员
相关VIP内容
专知会员服务
26+阅读 · 2021年7月11日
专知会员服务
52+阅读 · 2020年9月7日
【ICML2020】多视角对比图表示学习,Contrastive Multi-View GRL
专知会员服务
79+阅读 · 2020年6月11日
专知会员服务
60+阅读 · 2020年3月19日
100+篇《自监督学习(Self-Supervised Learning)》论文最新合集
专知会员服务
164+阅读 · 2020年3月18日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
相关资讯
Google代码Code Review实践指南发布
Python程序员
3+阅读 · 2019年9月7日
计算机 | 国际会议信息5条
Call4Papers
3+阅读 · 2019年7月3日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
无监督元学习表示学习
CreateAMind
27+阅读 · 2019年1月4日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
医学 | 顶级SCI期刊专刊/国际会议信息4条
Call4Papers
5+阅读 · 2018年12月28日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
人工智能 | 国际会议截稿信息9条
Call4Papers
4+阅读 · 2018年3月13日
MoCoGAN 分解运动和内容的视频生成
CreateAMind
18+阅读 · 2017年10月21日
Top
微信扫码咨询专知VIP会员