paperbot · PL 论文追踪

全部论文 待读 收藏

P2 HistoryFinder: Advancing Method-Level Source Code History Generation with Accurate Oracles and Enhanced Algorithm

HistoryFinder:以精确基准与增强算法推进方法级源代码历史生成
ICSE Proceedings of the 2026 IEEE/ACM 48th International Conference on Software Engineering2026匹配度 2/10 · 该论文属于软件工程与开发者工具方向,聚焦方法级代码历史重建和基准 oracle 构建,并不涉及用户核心关注的静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析;仅在“构建更可靠 benchmark/oracle”这一点上与用户兴趣有轻微交集。引用 1 inbox
Shahidul Islam, S M Ashik Aowal, Md Sharif Uddin, Shaiful Chowdhury
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出方法级代码历史重建工具 HistoryFinder,并构建两个更精确的基准 oracle,在精度、召回与效率上全面超越现有工具。

方法级代码历史的准确重建对维护、重构与代码理解至关重要。现有工具(如 CodeShovel、CodeTracker)的评估受限于不准确的 ground truth oracle。本文通过自动化分析与专家人工验证相结合,系统构建了两个新 oracle:修正后的 CodeShovel oracle 与新开发的 HistoryFinder oracle。在此基础上,作者提出 HistoryFinder 工具,旨在同时提升方法变更历史的准确性与完整性,并保持有竞争力的运行时间。在来自 40 个开源仓库的 400 个方法上进行广泛评估,结果表明 HistoryFinder 在 precision、recall 与 F1 上持续优于 CodeShovel、CodeTracker、IntelliJ 及基于 Git 的基线;其平均与中位执行时间在研究类工具中最低。基于 Git 的工具虽运行最快,但精度与召回显著较低,因此当同时重视准确性与效率时 HistoryFinder 是最佳选择。作者还提供 Web 界面、CLI 与 Java 库以便采用。

问题
现有方法级源代码历史生成工具(如 CodeShovel、CodeTracker)的评估受限于不准确的 ground truth oracle,难以可靠衡量其准确性与完整性。
方法
通过自动化分析与专家人工验证构建两个新 oracle(修正的 CodeShovel oracle 与 HistoryFinder oracle),并据此设计实现 HistoryFinder 工具以改进方法历史重建算法。
评估
在 40 个开源仓库的 400 个方法上,将 HistoryFinder 与 CodeShovel、CodeTracker、IntelliJ 及 Git 基线在 precision、recall、F1 和运行时间上进行比较。
原文摘要(Abstract)

Reconstructing a method’s change history efficiently and accurately is critical for many software engineering tasks, including maintenance, refactoring, and comprehension. Despite the availability of method history generation tools such as CodeShovel and CodeTracker, existing evaluations of their effectiveness are limited by inaccuracies in the ground truth oracles used. In this study, we systematically construct two new oracles—the corrected CodeShovel oracle and a newly developed HistoryFinder oracle—by combining automated analysis with expert-guided manual validation. We also introduce HistoryFinder, a new method history generation tool designed to improve not only the accuracy and completeness of method change histories but also to offer competitive runtime performance. Through extensive evaluation across 400 methods from 40 open-source repositories, we show that HistoryFinder consistently outperforms CodeShovel, CodeTracker, IntelliJ, and Git-based baselines in terms of precision, recall, and F1 score. Moreover, HistoryFinder achieves competitive runtime performance, offering the lowest mean and median execution times among all the research-based tools. While Git-based tools exhibit the fastest runtimes, this efficiency comes at the cost of significantly lower precision and recall—leaving HistoryFinder as the best overall choice when both accuracy and efficiency are important. To facilitate adoption, we provide a web interface, CLI, and Java library for flexible usage.

链接与引用

DOI 原文 · arXiv · DBLP

BibTeX
@inproceedings{abs-2507-14716,
  title = {HistoryFinder: Advancing Method-Level Source Code History Generation with Accurate Oracles and Enhanced Algorithm},
  author = {Shahidul Islam and S M Ashik Aowal and Md Sharif Uddin and Shaiful Chowdhury},
  booktitle = {ICSE},
  year = {2026},
  doi = {10.1145/3744916.3773238}
}