paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Towards reusing hints from past fixes

迈向复用历史修复中的线索
ICSE Proceedings of the 40th International Conference on Software Engineering2018匹配度 2/10 · 该论文属于自动程序修复的实证研究,使用依赖图分析历史修复复用,但未涉及 LLM/Agent、静态分析在 ML 系统或 Agentic 程序中的应用、浮点程序分析或贝叶斯程序分析,与研究画像核心方向关联较弱。引用 5 inbox
Hao Zhong, Na Meng
crossref: 2026-09-12

AI 速览

一句话:通过六种重叠度量实证研究历史修复能否为自动程序修复提供可复用线索。

自动程序修复(APR)常尝试复用过往修复来修复新缺陷,但新旧修复之间究竟如何重叠尚缺乏系统研究。本文设计六种重叠度量,对5,735个缺陷修复进行实证分析:为每个修复构建增量依赖图(delta dependency graph),从修复内容、代码结构和标识符名称三个维度刻画重叠。结果显示,若仅完全或部分复用过往修复的内容,同项目内单/多修复最多只能生成2.1%和3.2%的新修复,跨项目为0.9%和1.2%;若复用代码结构,则可分别达到41.3%和29.7%。这表明代码结构比具体内容更有复用价值。

问题
自动程序修复复用过往修复时,新旧修复在内容、代码结构和标识符名称上的重叠程度及其对复用可行性的影响尚不清楚。
方法
设计六种重叠度量,为5,735个缺陷修复构建增量依赖图,并分析同项目与跨项目修复在内容、代码结构、标识符名称上的重叠。
评估
通过大规模实证统计不同复用方式可生成的新修复比例,发现复用内容收益极低,而复用代码结构可显著提高可生成修复比例。
原文摘要(Abstract)

Researchers have recently proposed various automatic program repair (APR) approaches that reuse past fixes to fix new bugs. However, some fundamental questions, such as how new fixes overlap with old fixes, have not been investigated. Intuitively, the overlap between old and new fixes decides how APR approaches can construct new fixes with old ones. Based on this intuition, we systematically designed six overlap metrics, and performed an empirical study on 5,735 bug fixes to investigate the usefulness of past fixes when composing new fixes. For each bug fix, we created delta dependency graphs (i.e., program dependency graphs for code changes), and identified how bug fixes overlapped with each other in terms of the content, code structure, and identifier names of fixes. Our results show that if an APR approach composes new fixes by fully or partially reusing the content of past fixes, only 2.1% and 3.2% new fixes can be created from single or multiple past fixes in the same project, compared with 0.9% and 1.2% fixes created from past fixes across projects. However, if an APR approach composes new fixes by fully or partially reusing the code structure of past fixes, up to 41.3% and 29.7% new fixes can be created.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4525,
  title = {Towards reusing hints from past fixes},
  author = {Hao Zhong and Na Meng},
  booktitle = {ICSE},
  year = {2018},
  doi = {10.1145/3180155.3182550}
}