中文

D&C:一种基于分治的 IR 缺陷定位方法

软件工程 2019-02-08 v1

摘要

软件维护中的许多自动化任务依赖信息检索技术来在非结构化数据中识别特定信息。缺陷定位就是这样一个典型任务,其中分析缺陷报告中的文本以识别源代码中可与所报告缺陷相关联的文件位置。尽管结果令人鼓舞,基于 IR 的缺陷定位工具所提供的性能对于大规模采用仍不够显著。我们认为一个原因可能是试图构建一种万能方法。在本文中,我们广泛研究了最先进缺陷定位工具的性能,聚焦于查询构造及其相对于定位性能的重要性。基于该研究的见解,我们提出了一种新的学习方法,其中在清晰划分的缺陷-位置对集合上训练多个分类器模型。具体而言,我们对多组缺陷报告应用梯度提升监督学习方法,这些报告的定位使用特定类型特征似乎成功。训练场景建立在我们的发现之上,即各种最先进的定位工具对特定缺陷报告集可具有极高性能。我们实现了 D&C,其计算应分配给信息令牌类型对之间相似性度量的适当权重。在大型且最新的数据集上的实验结果显示 D&C 优于最先进工具。平均而言,实验在精选数据集上产生 0.52 的 MAP 分数和 0.63 的 MRR 分数,相较所有工具均有实质性能提升:MAP 提升 4 至最多 10 个百分点,而 MRR 提升 1 至最多 12。最后我们注意到 D&C 的定位性能稳定:约 50% 的缺陷可在 Top1 定位,77% 在 Top5,85% 在 Top10。

关键词

引用

@article{arxiv.1902.02703,
  title  = {D&C: A Divide-and-Conquer Approach to IR-based Bug Localization},
  author = {Anil Koyuncu and Tegawendé F. Bissyandé and Dongsun Kim and Kui Liu and Jacques Klein and Martin Monperrus and Yves Le Traon},
  journal= {arXiv preprint arXiv:1902.02703},
  year   = {2019}
}