开源社区评审过程度量体系及其实证研究
作者:
作者简介:

蒋竞(1985-),女,博士,副教授,CCF专业会员,主要研究领域为经验软件工程,开源软件,基于数据的分析与推荐.
吴秋迪(1996-),男,硕士生,主要研究领域为经验软件工程,开源软件.
张莉(1968-),女,博士,教授,博士生导师,CCF杰出会员,主要研究领域为软件建模与分析,需求工程,经验研究工程,软件体系结构.

通讯作者:

张莉,E-mail:lily@buaa.edu.cn

中图分类号:

TP311

基金项目:

科技创新2030——“新一代人工智能”重大项目(2018AAA0102304);国家自然科学基金(61672078);中央高校基本科研业务费(YWF-20-BJ-J-1018)


Open Source Community Review Process Measurement System and Its Empirical Research
Author:
Fund Project:

National Key Research and Development Program of China (2018AAA0102304); National Natural Science Foundation of China (61672078); Fundamental Research Funds for the Central Universities (YWF-20-BJ-J-1018)

  • 摘要
  • | |
  • 访问统计
  • |
  • 参考文献 [28]
  • |
  • 相似文献 [20]
  • | | |
  • 文章评论
    摘要:

    在开源社区中,不同开发人员提交的代码水平参差不齐,需要代码评审检查提交代码质量.决策者是代码评审的关键人物,审核提交代码,发现软件缺陷.代码评审情况会对开源软件质量产生影响,因此需要建立评审过程度量体系,了解代码评审情况,促进提高开源软件项目质量.现有的软件过程度量方法主要考虑提交代码和评审评论活动,缺乏考虑决策活动,难以充分度量人员的评审行为.引入决策者因素,提出了一个开源社区评审过程度量体系,包括评审活动指标和人员分布指标.评审活动指标包含评审次数、评审信息长度、评审代码改动行数以及评审时间.人员分布指标主要考虑改动者、评论者和决策者的比例和数量.然后,收集了3个热门开源项目数据,分析评审过程度量指标与软件缺陷数量的关系.通过实证研究分析发现:决策者数量,少改动、少评论、少决策者的比例等决策者相关指标和软件缺陷数量中等正相关.同时,与不考虑决策者的度量体系进行对比分析,发现含有决策者的度量体系与软件缺陷的相关性更高.实证研究结果验证了评审过程度量体系的有效性,说明增加决策者相关指标的必要性.

    Abstract:

    In the open source community, the code level of different developers varies, and code reviews are required to check the quality of the submitted code. Decision makers are the key persons in the code review, auditing the submitted code and finding software defects. Code reviews affect the quality of open source software. Therefore, it is necessary to establish code review process measurement system, understand the code review situation, and promote the quality of open source software projects. Existing software process measurement methods mainly consider code submission and review comments, but lack of consideration for decision making activities, and it is difficult to fully measure the review behavior. This study considers decision-maker factor, and proposes an open source community’s review process measurement system, including evaluation activity indicators and personnel distribution indicators. Review activity indicators include numbers of review, length of review information, number of lines that code changes, and review time. The personnel distribution indicators mainly consider the proportion and number of modifiers, commenters, and decision makers. Then, this study collects data from three popular open source projects and analyzes the relationship between evaluation process metrics and the number of software defects. Through empirical research and analysis, it is found that the number of decision-makers, the proportion of decision-makers with few changes, few comments, and few decision-makers are moderately positively correlated with the number of software defects. At the same time, compared with the measurement system without the decision maker, it is found that the measurement system with the decision maker has a higher correlation with software defects. The results of the empirical study verify the effectiveness of review process measurement system, and illustrate the necessity of adding relevant indicators for decision makers.

    参考文献
    [1] McIntosh S, Kamei Y, Adams B, et al. The impact of code review coverage and code review participation on software quality. In:Proc. of the MSR. 2014.
    [2] Bird C, Nagappan N, Murphy B. Don't touch my code! Examining the effects of ownership on software quality. In:Proc. of the 19th SIGSOFT/FSE ACM SIGSOFT Symp. on the Foundations of Software Engineering (FSE-19) and the 13rd European Software Engineering Conf. (ESEC 2011). 2011.
    [3] Thongtanunam P, Mcintosh S, Hassan AE. Revisiting code ownership and its relationship with software quality in the scope of modern code review. In:Proc. of the 38th IEEE/ACM Int'l Conf. on Software Engineering. 2016.
    [4] Dabbish L, Stuart C, Tsay J, et al. Social coding in Github:Transparency and collaboration in an open software repository. In:Proc. of the ACM 2012 Conf. on Computer Supported Cooperative WorkACM. 2012.
    [5] Gousios G, Zaidman A, Storey MA, et al. Work practices and challenges in pull-based development:The integrator's perspective. In:Proc. of the ICSE. 2015.
    [6] Casalnuovo C, Vasilescu B, Devanbu P. Developer onboarding in GitHub:The role of prior social links and language experience. In:Proc. of the 2015 10th Joint Meeting on Foundations of Software Engineering. 2015.
    [7] Tsay J, Dabbish L, Herbsleb J. Influence of social and technical factors for evaluating contribution in GitHub. In:Proc. of the 36th Int'l Conf. on Software Engineering. 2014.
    [8] Gharehyazie M, Posnett D, Filkov V. Social activities rival patch submission for prediction of developer initiation in oss projects. In:Proc. of the ICSM. 2013.
    [9] Zhou M, Mockus A. What make long term contributors:Willingness and opportunity in OSS community. In:Proc. of the ICSE. 2012.
    [10] Jiang J, Feng FL, Lian XL, et al. Long-term active integrator prediction in the evaluation of code contributions. In:Proc. of the SEKE. 2016.
    [11] Zanjani MB, Kagdi H, Bird C. Automatically recommending peer reviewers in modern code review. IEEE Trans. on Software Engineering, 2016,42(6):530-543.
    [12] Gousios G, Pinzger M, van Deursen A. An exploratory study of the pull-based software development model. In:Proc. of the ICSE. 2014.
    [13] Xia X, Lo D, Wang XY, et al. Who should review this change? Putting text and file location analyses together for more accurate recommendations. In:Proc. of the ICSME. 2015.
    [14] Thongtanunam P, Tantithamthavorn C, Kula RG, et al. Who should review my code? A file location- based code-reviewer recommendation approach for modern code review. In:Proc. of the SANER. 2015.
    [15] Yu Y, Wang HM, Yin G, et al. Reviewer recommender of pull-requests in GitHub. In:Proc. of the ICSME. 2014.
    [16] Yu Y, Wang HM, Yin G, et al. Who should review this pull-request:Reviewer recommendation to expedite crowd collaboration. In:Proc. of the APSEC. 2014.
    [17] Yu Y, Wang HM, Yin G, et al. Reviewer recommendation for pull-requests in GitHub:What can we learn from code review and bug assignment. Information and Software Technology, 2016,74:204-218.
    [18] Lu S, Yang D, Hu J, et al. Code reviewer recommendation based on time and impact factor for pull request in github. Computer Systems & Applications, 2016,25(12):155-161(in Chinese with English abstract).
    [19] Weibgerber P, Neu D, Diehl S. Small Patches Get In! In:Proc. of the MSR. 2008.
    [20] Bosu A, Carver JC. Impact of developer reputation on code review outcomes in OSS projects:An empirical investigation. In:Proc. of the ESEM. 2014.
    [21] Gousios G, Pinzger M, van Deursen A. An exploratory study of the pull-based software development model. In:Proc. of the ICSE. 2014.
    [22] Tsay J, Dabbish L, Herbsleb J. Influence of social and technical factors for evaluating contribution in GitHub. In:Proc. of the ICSE. 2014.
    [23] Thongtanunam P, McIntosh S, Hassan AE, et al. Investigating code review practices in defective files:An empirical study of the QT system. In:Proc. of the 12th Int'l Working Conf. on Mining Software Repositories. 2015.
    [24] Ray B, Posnett D, Filkov V. A large scale study of programming languages and code quality in GitHub. In:Proc. of the 22nd ACM SIGSOFT Int'l Symp. on Foundations of Software Engineering. 2014.
    [25] Bosu A. Characteristics of the vulnerable code changes identified through peer code review. In:Proc. of the ICSE Companion 2014, 2014.736-738.
    [26] Ratner B. The correlation coefficient:Its values range between +1/-1, or do they? Journal of Targeting, Measurement and Analysis for Marketing, 2009,17(2):139-142.
    附中文参考文献:
    [18] 卢松,杨达,胡军,张潇.基于时间和影响力因子的Github Pull Request评审人推荐.计算机系统应用,2016,25(12):155-161.
    引证文献
    网友评论
    网友评论
    分享到微博
    发 布
引用本文

蒋竞,吴秋迪,张莉.开源社区评审过程度量体系及其实证研究.软件学报,2021,32(12):3698-3709

复制
分享
文章指标
  • 点击次数:913
  • 下载次数: 2711
  • HTML阅读次数: 1776
  • 引用次数: 0
历史
  • 收稿日期:2020-02-27
  • 最后修改日期:2020-07-11
  • 在线发布日期: 2021-12-02
  • 出版日期: 2021-12-06
文章二维码
您是第19733438位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号