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

蒋竞  等:开源社区评审过程度量体系及其实证研究                                                         3707


             为了研究是否考虑决策者,本文统计分别统计只考虑改动者和评论者的度量体系、只考虑改动者的度量体
         系与软件缺陷数量的关系,结果详见表 7 和表 8.
                    Table 7    Relationship of modifier and commentator between current time period index
                                        and next time period module defect
                   表 7   只考虑改动者和评论者的当前时间段指标和上一个时间段模块缺陷的相关系数

                              指标                 xbmc       roslyn   elasticsearch  相关性
                                评审次数            0.611***   0.549***   0.648***  中等正相关
                               评审信息长度           0.547***   0.465***   0.571***  中等正相关
                  评审活动
                                评审时间            0.559***   0.450***   0.559***  中等正相关
                               代码改动行数           0.515***   0.463***   0.562***  中等正相关
                               改动者数量            0.647***   0.653***   0.671***  中等正相关
                               评论者数量            0.614***   0.607***   0.663***  中等正相关
                           多改动、多评论者的比例          0.174***   −0.273***   −0.249***   不确定
                  人员分布
                           多改动、少评论者的比例          0.359***   0.250***   0.339***    不确定
                           少改动、多评论者的比例           −0.061    −0.420***   −0.358***   不确定
                           少改动、少评论者的比例          0.156***   0.455***   0.385***    不确定
             Table 8    Relationship of modifier between current time period index and next time period module defect
                      表 8   只考虑改动者的当前时间段指标和上一个时间段模块缺陷的相关系数
                        指标                   xbmc         roslyn      elasticsearch  相关性
                              评审次数         0.611***      0.549***      0.648***    中等正相关
                            评审信息长度         0.547***      0.465***      0.571***    中等正相关
                评审活动
                              评审时间         0.559***      0.450***      0.559***    中等正相关
                            代码改动行数         0.515***      0.463***      0.562***    中等正相关
                             改动者数量         0.647***      0.653***      0.671***    中等正相关
                人员分布       多改动者的比例         0.165***      −0.198***    −0.213***      不确定
                           少改动者的比例         −0.162***     0.198***      0.216***      不确定
             表 6 里考虑了决策者的人员分布指标中,多改动、少评论、少决策者的比例,少改动、少评论、少决策者
         的比例与软件缺陷数量相关系数在 0.4 到 0.7 之间,呈现较强的正相关性;相比于表 6,表 7 只考虑改动者和评论
         者的人员分布指标里,多改动、少评论者的比例,少改动、多评论者的比例,少改动、少评论者的比例和软件缺
         陷数量的相关性无法确定;表 8 只考虑改动者人员分布指标的相关系数绝对值基本都小于 0.3.本文提出的度量
         指标与软件缺陷数量存在较强的相关性.这充分说明本文考虑了决策者因素的度量体系的有效性和合理性.

         5    讨   论

         5.1   有效性分析
             本文分别从外部有效性和结构有效性的角度讨论对有效性的威胁.
             •   外部有效性.本文只在 Github 上选取了部分项目作为数据集,因此,本文的结果可能不适用于所有开源
                社区.以后可以考虑分析更多 GitHub 的项目或者其他开源社区项目,进一步分析评审过程度量体系的
                有效性;
             •   结构有效性.本文爬取的数据都是 Github 记录的代码评审活动,然而开发人员可能会通过其他方式进
                行代码评审,例如当面讨论或收发邮件.然而,这些方式都没有显式的记录和数据.因此,本文研究的是
                有相应的代码更改和评审记录的模块,包含项目中大部分的评审活动.另外,本文主要考虑代码评审过
                程度量指标.未来考虑尝试更多度量指标并分析其和软件缺陷的关系,比如考虑评估代码评审质量体
                系的方法以及相关指标.
         5.2   启   示

             表 4 中只考虑了改动者和评论者,没有考虑决策者,结果显示:多改动、少评论者的比例,少改动、多评论者
   38   39   40   41   42   43   44   45   46   47   48