首页> 外文会议>IEEE/ACM International Conference on Mining Software Repositories >Predicting Design Impactful Changes in Modern Code Review: A Large-Scale Empirical Study
【24h】

Predicting Design Impactful Changes in Modern Code Review: A Large-Scale Empirical Study

机译:预测现代守则评论中的设计影响变化:大规模的实证研究

获取原文

摘要

Companies have adopted modern code review as a key technique for continuously monitoring and improving the quality of software changes. One of the main motivations for this is the early detection of design impactful changes, to prevent that design-degrading ones prevail after each code review. Even though design degradation symptoms often lead to changes’ rejections, practices of modern code review alone are actually not sufficient to avoid or mitigate design decay. Software design degrades whenever one or more symptoms of poor structural decisions, usually represented by smells, end up being introduced by a change. Design degradation may be related to both technical and social aspects in collaborative code reviews. Unfortunately, there is no study that investigates if code review stakeholders, e.g, reviewers, could benefit from approaches to distinguish and predict design impactful changes with technical and/or social aspects. By analyzing 57,498 reviewed code changes from seven open-source systems, we report an investigation on prediction of design impactful changes in modern code review. We evaluated the use of six ML algorithms to predict design impactful changes. We also extracted and assessed 41 different features based on both social and technical aspects. Our results show that Random Forest and Gradient Boosting are the best algorithms. We also observed that the use of technical features results in more precise predictions. However, the use of social features alone, which are available even before the code review starts (e.g., for team managers or change assigners), also leads to highly-accurate prediction. Therefore social and/or technical prediction models can be used to support further design inspection of suspicious changes early in a code review process. Finally, we provide an enriched dataset that allows researchers to investigate the context behind design impactful changes during the code review process.
机译:公司已采用现代化的审核作为连续监控和提高软件变化质量的关键技术。其中一个主要动机是早期检测设计有影响力的变化,以防止在每个代码审查后占上去的设计劣化。尽管设计劣化症状往往导致更改的拒绝,但是单独的现代守则评价的实践实际上不足以避免或减轻设计衰减。只要结构性差的差,通常由嗅觉所代表的一个或多个症状,软件设计就会降低,最终通过变化引入。设计退化可能与协作准则审查中的技术和社会方面有关。遗憾的是,如果代码审查利益相关者,例如审核人员,则无法调查,例如审核员可以从利用和预测与技术和/或社会方面进行区分和预测设计影响变化的方法。通过分析57,498篇综述从七种开源系统的审查代码,我们向现代审查中的设计有影响力变化预测的调查报告。我们评估了六种ML算法的使用来预测设计有影响力的变化。我们还根据社会和技术方面提取和评估了41个不同的特征。我们的结果表明,随机森林和梯度提升是最好的算法。我们还观察到技术功能的使用导致更精确的预测。但是,即使在代码审查开始之前,也可以使用社交功能(例如,对于团队经理或改变转让人),也导致高度准确的预测。因此,社交和/或技术预测模型可用于在准则审查过程中早期支持进一步设计检验。最后,我们提供了一个丰富的数据集,允许研究人员在代码审查过程中调查设计有影响力的变化背后的背景。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号