Page 226 - 《软件学报》2020年第9期
P. 226

郭肇强  等:基于信息检索的缺陷定位:问题、进展与挑战                                                      2847


                 等人  [115] 提供的方法进行收集的,但是不同的研究者在具体操作过程中会有细节上的差别                           [28,35,39,115] ,
                 从而导致不同数据集的准确性受到影响.其中,一些重要的细节信息需要验证,例如:与缺陷报告进行
                 匹配的源代码的版本是否为被修复前的版本                 [47] ;数据集中明显不包含缺陷的部分(例如测试文件)应
                 当被排除在推荐列表之外          [39] 等等.这些不完全统一的处理细节会严重影响方法测试结果的准确性,甚
                 至产生互相矛盾的比较结果          [66] ;
             (4)  实用性.目前的 IRBL 方法仅活跃在实验研究阶段,它们并没有在工程实践中大量应用                          [39] .除了准确性
                 和泛化性较低的因素之外,更重要的原因是这些定位方法(如 BugLocator                    [28] ,BRTracer [30] ,Locus [32] 等)
                 只能够提供给开发者建议性的缺陷文件列表,无法为开发人员修复缺陷提供更多的指导信息.在生产
                 实践中,开发人员需要完全依靠自己对代码的理解来手动检查,所以目前缺陷定位技术所提供的帮助
                 很小,我们分析,这是导致它们的实用性很难满足开发者的需要的另一个重要原因.
             针对缺陷定位技术面临的问题挑战,我们从结果分析、实验验证和修复指导总结了以下几方面可能将会成
         为进一步深入研究的重要方向.
             (1)  结果分析.其中一个研究方向是在缺陷定位框架中应当具有侦测机制,对缺陷报告的特征进行检测并
                 进行分类,根据检测结果,缺陷定位框架应当决定是使用他们提出 IRBL 方法进行定位还是放弃对该
                 报告的定位.这一过程的实现,有利于开发者充分发挥 IRBL 方法在其擅长处理的缺陷报告中进行推
                 荐的能力,并且避免他们给出低效的推荐结果.这种机制的建立,需要对 IRBL 方法的定位结果进行分
                 析,通过收集较差的推荐列表所对应的的缺陷报告,分析这些缺陷报告的特征,在应用时,遇到具备这
                 类特征的缺陷报告就停止使用 IRBL 方法,而是进行人工处理或者借助其他技术来帮助定位.除此之
                 外,需要增多对 IRBL 方法进行工作量感知            [36,37] 方面的性能评估分析;
             (2)  实验验证.针对泛化性和准确性的挑战问题,一个研究方向是增加科学准确对比实验研究目前方法的
                 有效性.主要包括两个方面.
                 1)   收集全面精准的数据集.目前的研究所使用的数据集极其不统一,所以他们得出的结论具有片
                     面性,不能代表其真实的性能.为基于信息检索的缺陷定位研究收集更多的准确数据集,需要涵
                     盖各种语言的书写的项目以及各个领域的项目,用来验证方法的有效性和泛化性;
                 2)   设置科学的实验流程和设置.目前的研究所用的实验设置比较混乱,这也会影响实验结果的准
                     确性.因此,需要在科学统一的流程和设置下进行实验.实验设计要符合现实开发的场景,以确保
                     其合理性;
             (3)  修复指导.为了提高定位方法的实用性能,一个重要的研究方向便是对缺陷定位的结果提供修复指导
                 提示信息.对于给定的推荐结果列表,开发人员只能按照顺序从头开始审查,这还是需要大量花费精
                 力来理解缺陷.如果 IRBL 方法能够指出其中列表中的文件中哪些特征是与缺陷报告描述内容相符,
                 这可以在很大程度上帮助开发人员快速理解缺陷,并顺利进行后续的修复工作.

         7    结束语

             近年来,基于信息检索的缺陷定位技术(IRBL)由于其具有外部依赖少、计算成本低的优势,成为了缺陷定位
         领域的研究热点.本文围绕 IRBL 方法的模型改良和模型评估两大方面,对当前的研究工作进行了梳理和总结.
         基于当前的研究进展,本文总结了该领域面临的主要挑战并指出了未来可能的研究方向.主要工作总结如下:
         (1)  针对模型改良,本文从更换检索模型、使用特征分析和进行查询重构这 3 个维度进行归类和阐述;(2)  针对
         模型评估,本文从模型比较、评价指标和实验数据这 3 个维度总结该领域的评估现状和存在的问题;(3)  本文从
         局限性、泛化性、准确性和实用性这 4 个角度总结了当前 IRBL 领域研究面临的问题挑战,并针对性地指出了
         未来的研究方向.

         致谢   感谢各位审稿专家提出的宝贵意见.
   221   222   223   224   225   226   227   228   229   230   231