中文

BoostNSift:一种用于方法级缺陷定位的查询增强与代码筛除技术

软件工程 2021-08-31 v1

摘要

在处理大规模系统时,定位缺陷是一项重要但费力且耗时的任务。为此,信息检索(IR)技术正越来越多地用于针对给定缺陷报告建议潜在的含缺陷源代码位置。尽管 IR 技术具有很好的可扩展性,但在实践中其在准确本地化软件系统缺陷方面的有效性仍然较低。实证研究结果表明,缺陷定位技术的有效性可通过用于定位缺陷代码的查询配置来增强。然而,在研究者提出的大多数基于 IR 的缺陷定位技术中,查询配置的影响未被充分考虑。类似地,技术在定位缺陷时将所有代码元素视为具有同等的缺陷可疑性,但这也并非总是如此。本文中,我们提出了一种名为“BoostNSift”的新的方法级、基于信息检索的缺陷定位技术。BoostNSift 通过“增强(boost)”查询中的重要信息来利用其价值,随后基于一种新颖技术对识别出的代码元素进行“筛除(sift)”,该技术强调代码元素对某一缺陷报告的特定相关性甚于其对所有缺陷报告的通用相关性。为评估 BoostNSift 的性能,我们采用了一种常用于评估文件级基于 IR 的缺陷定位技术的最先进实证设计:从常用的 Eclipse、AspectJ、SWT 和 ZXing 基准中选取 6851 个缺陷,并公开以供方法级分析使用。

关键词

引用

@article{arxiv.2108.12901,
  title  = {BoostNSift: A Query Boosting and Code Sifting Technique for Method Level Bug Localization},
  author = {Abdul Razzaq and Jim Buckley and James Vincent Patten and Muslim Chochlov and Ashish Rajendra Sai},
  journal= {arXiv preprint arXiv:2108.12901},
  year   = {2021}
}