paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Show Me Why It’s Correct: Saving 1/3 of Debugging Time in Program Repair with Interactive Runtime Comparison

展示其为何正确:用交互式运行时比较在程序修复中节省 1/3 调试时间
OOPSLA 9(OOPSLA1)2025匹配度 2/10 · 论文涉及静态分析与程序修复/调试,但目标是交互式补丁运行时比较和人工理解,不涉及 LLM/Agent、ML 系统程序分析、浮点程序分析或贝叶斯程序分析,与用户画像的核心交叉方向匹配度较低。引用 0 inbox
Ruixin Wang, Zhongkai Zhao, Le Fang, Nan Jiang, Yiling Lou, Lin Tan, Tianyi Zhang
crossref: 2026-09-10

AI 速览

一句话:提出 iFix,通过交互式比较补丁的运行时差异,帮助开发者理解补丁正确性并提升修复效率。

自动程序修复(APR)虽能生成补丁,但开发者仍需人工检查补丁正确性,尤其要甄别通过测试却未真正修复缺陷的看似合理补丁。为此,作者提出交互式方法 iFix:通过静态分析识别与缺陷语句相关的运行时变量,在执行中捕获每个补丁的运行时值,并将这些值跨补丁候选对齐,使用户能比较其运行时行为差异。作者用 28 名受试者开展被试内用户研究:相比人工检查与最先进的交互式补丁过滤技术,iFix 将任务完成时间分别减少 36% 和 33%,信心分别提高 50% 和 20%;定量实验还表明,其使正确补丁排名至少提升 39%,并可推广至不同 APR 工具。

问题
自动程序修复生成的补丁需要开发者手动检查正确性,尤其是看似合理补丁会增加验证负担,现有方法难以高效理解与比较补丁。
方法
iFix 通过静态分析定位与缺陷语句相关的运行时变量,捕获各补丁运行时值并跨候选对齐,支持交互式比较运行时差异以理解补丁。
评估
通过 28 名受试者的被试内用户研究,以及与人工检查和最先进交互式补丁过滤技术的对比,并用定量实验评估补丁排序提升与跨 APR 工具泛化性。
原文摘要(Abstract)

Automated Program Repair (APR) holds the promise of alleviating the burden of debugging and fixing software bugs. Despite this, developers still need to manually inspect each patch to confirm its correctness, which is tedious and time-consuming. This challenge is exacerbated in the presence of plausible patches, which accidentally pass test cases but may not correctly fix the bug. To address this challenge, we propose an interactive approach called iFix to facilitate patch understanding and comparison based on their runtime difference. iFix performs static analysis to identify runtime variables related to the buggy statement and captures their runtime values during execution for each patch. These values are then aligned across different patch candidates, allowing users to compare and contrast their runtime behavior. To evaluate iFix , we conducted a within-subjects user study with 28 participants. Compared with manual inspection and a state-of-the-art interactive patch filtering technique, iFix reduced participants’ task completion time by 36% and 33% while also improving their confidence by 50% and 20%, respectively. Besides, quantitative experiments demonstrate that iFix improves the ranking of correct patches by at least 39% compared with other patch ranking methods and is generalizable to different APR tools.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3209,
  title = {Show Me Why It’s Correct: Saving 1/3 of Debugging Time in Program Repair with Interactive Runtime Comparison},
  author = {Ruixin Wang and Zhongkai Zhao and Le Fang and Nan Jiang and Yiling Lou and Lin Tan and Tianyi Zhang},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {OOPSLA1},
  year = {2025},
  doi = {10.1145/3720510}
}