paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Identifying casualty changes in software patches

识别软件补丁中的连带变更(casualty changes)
FSE Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2021匹配度 2/10 · 论文关注软件补丁中的连带变更分类与自动识别,偏软件工程和变更预测;虽可能属于程序分析边缘,但未涉及用户核心的 LLM/Agent 与静态分析交叉、浮点程序分析或贝叶斯程序分析。引用 7 inbox
Adriana Sejfia, Yixue Zhao, Nenad Medvidović
crossref: 2026-09-12

AI 速览

一句话:提出补丁连带变更分类体系与自动识别工具 CasCADe,并证明去噪可提升变更预测。

软件补丁中的噪声会影响补丁理解、分析以及变更预测等任务,已有去噪方法未能彻底解决该问题。作者在 Tomcat 安全补丁数据集及另外五个系统的安全补丁中发现了一类此前未报告的噪声,称为非本质连带变更:这些变更本身不改变程序逻辑,却由补丁中的其他变更所必需。论文给出了连带变更的综合分类体系,并实现了自动识别技术 CasCADe。作者在多个公开补丁数据集及相关工具上评估 CasCADe,结果表明其识别准确率很高,这类噪声在补丁中相当常见,且去除该噪声能够提升一个已发表的基于变更的方法的评估结果。

问题
软件补丁中的噪声(尤其非本质连带变更)会妨碍补丁理解、分析和变更预测,而现有方法未能有效识别这类噪声。
方法
通过分析 Tomcat 与五个额外系统的安全补丁建立连带变更分类体系,并实现自动识别工具 CasCADe。
评估
在多个公开补丁数据集及针对补丁的工具上评估,验证 CasCADe 的准确率、噪声普遍性,以及去噪对已有基于变更方法的提升。
原文摘要(Abstract)

Noise in software patches impacts their understanding, analysis, and use for tasks such as change prediction. Although several approaches have been developed to identify noise in patches, this issue has persisted. An analysis of a dataset of security patches for the Tomcat web server, which we further expanded with security patches from five additional systems, uncovered several kinds of previously unreported noise which we call nonessential casualty changes. These are changes that themselves do not alter the logic of the program but are necessitated by other changes made in the patch. In this paper, we provide a comprehensive taxonomy of casualty changes. We then develop CasCADe, an automated technique for automatically identifying casualty changes. We evaluate CasCADe with several publicly available datasets of patches and tools that focus on them. Our results show that CasCADe is highly accurate, that the kinds of noise it identifies occur relatively commonly in patches, and that removing this noise improves upon the evaluation results of a previously published change-based approach.

链接与引用

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

BibTeX
@inproceedings{paperbot6417,
  title = {Identifying casualty changes in software patches},
  author = {Adriana Sejfia and Yixue Zhao and Nenad Medvidović},
  booktitle = {FSE},
  year = {2021},
  doi = {10.1145/3468264.3468624}
}