Hey APR! Integrate Our Fault Localization Skill: Toward Better Automated Program Repair

Hey APR! Integrate Our Fault Localization Skill: Toward Better Automated Program Repair
复制标题

嘿,阿普!

DOI:
10.1109/compsac54236.2022.00101
复制
发表时间:
2022
期刊:
Proceedings of Annual Computers, Software, and Applications Conference (COMPSAC)
影响因子:
--
通讯作者:
Ubayashi Naoyasu
Ubayashi Naoyasu
中科院分区:
--
文献类型:
--
作者:
Yamate Kyosuke;Kondo Masanari;Kashiwa Yutaro;Kamei Yasutaka;Ubayashi Naoyasu

文献摘要

相似文献

背景之前的研究缺乏利用开发人员技能来增强自动程序修复(APR)性能的观点。APR有一个称为故障定位(FL)的阶段,它会自动查找导致故障的错误语句。为了实现一个良好的FL阶段,我们研究开发人员的FL技能,它允许开发人员找到错误的语句。我们假设,这样的FL技能可以添加额外的信息,以增加故障定位的准确性,并降低执行成本的APR.AimsWe旨在揭示一个标准,区分是否使用FL技能降低执行成本的国家的最先进的APR,TBar,取决于FL技能的准确性。这是最流行的数据集。我们比较了TBar使用FL技能或使用基于频谱的故障定位(SBFL)生成的候选补丁的数量。结果我们的案例研究表明,如果开发人员在检查目标程序中40%的语句之前定位错误语句,那么TBar的执行成本将减少一半以上的研究错误。40%的值是一个要求,开发人员使用FL技能,以增强性能的APR.ConclusionIf开发人员可以本地化的错误语句检查前40%的语句,集成的FL技能与SBFL使TBar更快相比,当SBFL被使用。
BackgroundPrior studies lack the perspective of using developer's skills to augment the performance of automated program repair (APR). APR has a phase referred to as fault localization (FL), which automatically finds the faulty statement that causes faults. To achieve a well-performed FL phase, we study developers' FL skills, which allow developers to find faulty statements. We suppose that such FL skills can add additional information to fault localization to augment the accuracy of fault localization and reduce the execution cost of APR.AimsWe aim at revealing a criterion that distinguishes whether using the FL skill reduces the execution cost of the state-of-the-art APR, TBar, depending on the accuracy of the FL skill.MethodWe conduct a simulation case study in the Defects4J dataset, which is the most popular dataset. We compare the numbers of candidate patches generated by TBar using the FL skill or using spectrum-based fault localization (SBFL).ResultsOur case study revealed that, if developers localized the faulty statements before inspecting 40 % of the statements in the target program, the execution cost of TBar reduces for over half of the studied faults. The 40 % value is a requirement for developers using the FL skill to augment the performance of APR.ConclusionIf developers can localize the faulty statement before inspecting 40 % of the statements, integrating the FL skill with SBFL makes TBar faster compared to when SBFL is used.