Page 44 - 《软件学报》2021年第12期
P. 44

3708                                Journal of Software  软件学报 Vol.32, No.12, December 2021

         的比例,少改动、少评论者的比例都和软件缺陷数量接近弱相关,达不到中等相关;表 5 里只考虑改动者,人员分
         布指标与软件缺陷数量的相关性无法确定.而表 3 中,考虑了决策者因素的度量指标与软件缺陷数量存在较强
         的相关性.因此,在设计评审过程度量体系时,应该考虑决策者因素.
             表 3~表 5 的结果显示,有的开发人员主要通过决策来参与软件开发.他们在传统的指标体系中被定义为少
         改动者、少评论者,和软件缺陷数量的相关性无法确定.但是在考虑了决策者因素后,他们反而因为多决策活动
         而成为了软件开发的主要贡献人员.因此,建议未来评审相关的研究考虑决策者和决策活动.
             从表 3 看出,一些度量指标和软件缺陷数量至少中等正相关,包括评审次数,评审信息长度,评审时间,代码
         改动行数,改动者数量,评论者数量,决策者数量,少改动、少评论、少决策者的比例.这些指标的数值越大,软件
         缺陷数量越多.因此,开源项目需要重点观察少改动、少评论、少决策者的比例等指标高的模块,这些高风险模
         块往往有更多的软件缺陷.

         6    总结与展望
             在开源开发中,不同的开发人员的代码水平参差不齐.代码评审是保证开源项目质量的重要方式.本文提出
         了一个开源社区评审过程度量体系,包括评审活动指标和人员分布指标.该度量体系综合考虑人员在代码改
         动、评审决策和发表评论的活动.然后,本文分析了评审过程与软件缺陷之间的关系.通过与不考虑决策者的度
         量指标进行对比分析,验证了本文提出评审过程度量体系的有效性,说明了增加决策者相关指标的必要性.

         References:
          [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.
   39   40   41   42   43   44   45   46   47   48   49