一句话:通过裂分测试与开发者调研,揭示故障定位实验的三项常见假设会高估AFL、低估APR,并呼吁保守评估。
论文研究自动调试评估中的三项常见假设:修复位置代表根因、根因位于单条语句、检查到首个错误语句前的语句数代表调试代价。调查显示55%的实验至少采用一项,却少评估其影响。作者用裂分测试等受控实验,基于46个开源C程序的352个缺陷、19种自动故障定位技术(18种统计调试公式与动态切片)和2种自动程序修复技术(GenProg、Angelix),并调查76名专业开发者。结果显示,这些假设掩盖调试难度,使AFL效果看似提升最多38%,使APR效果看似下降2倍;83%开发者认为假设不适用,66%更偏好无假设诊断且偏好约为两倍。由此呼吁保守评估调试器。
Much research on automated program debugging often assumes that bug fix location(s) indicate the faults' root causes and that root causes of faults lie within single code elements (statements). It is also often assumed that the number of statements a developer would need to inspect before finding the first faulty statement reflects debugging effort. Although intuitive, these three assumptions are typically used (55% of experiments in surveyed publications make at least one of these three assumptions) without any consideration of their effects on the debugger's effectiveness and potential impact on developers in practice. To deal with this issue, we perform controlled experimentation, split testing in particular, using 352 bugs from 46 open-source C programs, 19 Automated Fault Localization (AFL) techniques (18 statistical debugging formulas and dynamic slicing), two (2) state-of-the-art automated program repair (APR) techniques (GenProg and Angelix) and 76 professional developers. Our results show that these assumptions conceal the difficulty of debugging. They make AFL techniques appear to be (up to 38%) more effective, and make APR tools appear to be (2X) less effective. We also find that most developers (83%) consider these assumptions to be unsuitable for debuggers and, perhaps worse, that they may inhibit development productivity. The majority (66%) of developers prefer debugging diagnoses without these assumptions twice as much as with the assumptions. Our findings motivate the need to assess debuggers conservatively, i.e., without these assumptions.
@inproceedings{SoremekunKBP23,
title = {Evaluating the Impact of Experimental Assumptions in Automated Fault Localization},
author = {Ezekiel Soremekun and Lukas Kirschner and Marcel Böhme and Mike Papadakis},
booktitle = {ICSE},
year = {2023},
doi = {10.1109/icse48619.2023.00025}
}