paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Break the dead end of dynamic slicing: localizing data and control omission bug

打破动态切片的死胡同:定位数据与控制遗漏缺陷
ASE Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering2018匹配度 3/10 · 论文属于程序分析/调试与机器学习的交叉,关注动态切片定位遗漏缺陷,但方法为神经网络而非 LLM/Agent,且不涉及用户核心方向(Agentic 程序静态分析、LLM/Agent 改进静态分析或形式化验证、浮点程序分析、贝叶斯程序分析)。引用 29 inbox
Yun Lin, Jun Sun, Lyly Tran, Guangdong Bai, Haijun Wang, Jinsong Dong
crossref: 2026-09-12

AI 速览

一句话:通过实证发现遗漏缺陷的修复模式,并用神经网络为动态切片无法定位的遗漏缺陷推荐检查位置。

动态切片常用于从程序执行轨迹追踪故障根因,但面对因缺失代码而引发的遗漏缺陷时,往往过度跳过根因,使调试陷入死胡同。作者先在 Defects4J 上对遗漏缺陷进行实证研究,发现其占比达 46.4%,且致因与修复存在重复模式,这些模式可提示如何突破切片局限。基于此,他们在 Defects4J 的遗漏缺陷上训练神经网络模型,在切片失效时推荐应检查的位置。针对 3193 个切片无法定位的变异遗漏缺陷,该方法的定位效果显著优于随机基准(63.8% 对 2.8%)。

问题
动态切片在遗漏缺陷上会过度跳过根因,无法有效定位,论文研究如何在其失效时继续定位数据与控制遗漏缺陷。
方法
对 Defects4J 中遗漏缺陷做实证分析,利用发现的致因与修复模式训练神经网络,在切片进入死胡同时推荐检查位置。
评估
在 3193 个切片无法定位的变异遗漏缺陷上评估,方法以 63.8% 的定位成功率超过随机基准的 2.8%。
原文摘要(Abstract)

Dynamic slicing is a common way of identifying the root cause when a program fault is revealed. With the dynamic slicing technique, the programmers can follow data and control flow along the program execution trace to the root cause. However, the technique usually fails to work on omission bugs, i.e., the faults which are caused by missing executing some code. In many cases, dynamic slicing over-skips the root cause when an omission bug happens, leading the debugging process to a dead end. In this work, we conduct an empirical study on the omission bugs in the Defects4J bug repository. Our study shows that (1) omission bugs are prevalent (46.4%) among all the studied bugs; (2) there are repeating patterns on causes and fixes of the omission bugs; (3) the patterns of fixing omission bugs serve as a strong hint to break the slicing dead end. Based on our findings, we train a neural network model on the omission bugs in Defects4J repository to recommend where to approach when slicing can no long work. We conduct an experiment by applying our approach on 3193 mutated omission bugs which slicing fails to locate. The results show that our approach outperforms random benchmark on breaking the dead end and localizing the mutated omission bugs (63.8% over 2.8%).

链接与引用

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

BibTeX
@inproceedings{paperbot4722,
  title = {Break the dead end of dynamic slicing: localizing data and control omission bug},
  author = {Yun Lin and Jun Sun and Lyly Tran and Guangdong Bai and Haijun Wang and Jinsong Dong},
  booktitle = {ASE},
  year = {2018},
  doi = {10.1145/3238147.3238163}
}