Accurate method and variable tracking in commit history
Mehran Jodavi, Nikolaos Tsantalis
摘要
Tracking program elements in the commit history of a project is essential for supporting various software maintenance, comprehension and evolution tasks. Accuracy is of paramount importance for the adoption of program element tracking tools by developers and researchers. To this end, we propose CodeTracker, a refactoring-aware tool that can generate the commit change history for method and variable declarations with a very high accuracy. More specifically, CodeTracker has 99.9% precision and recall in method tracking, surpassing the previous state-of-the-art tool, CodeShovel, with a comparable execution time. CodeTracker is the first tool of its kind that can track the change history of variables with 99.7% precision and 99.8% recall. To evaluate its accuracy in variable tracking, we extended the oracle created by Grund et al. for the evaluation of CodeShovel, with the complete change history of all 1345 variables and parameters declared in the 200 methods comprising the Grund et al. oracle. We make our tool and extended oracle publicly available to enable the replication of our experiments and facilitate future research on program element tracking techniques.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper5
- Fonte: Finding Bug Inducing Commits from FailuresGabin An, Jingun Hong, Naryeong Kim, Shin YooICSE 2023 · 被引用 10 次
- Automated Software Entity Matching Between Successive VersionsBo Liu, Hui Liu, Nan Niu, Yuxia Zhang 等ASE 2023 · 被引用 8 次
- HyperDiff: Computing Source Code Diffs at ScaleQuentin Le Dilavrec, Djamel Eddine Khelladi, Arnaud Blouin, Jean-Marc JézéquelFSE 2023 · 被引用 5 次
- CodeMapper: A Language-Agnostic Approach to Mapping Code Regions Across CommitsHuimin Hu, Michael PradelICSE 2026
- HistoryFinder: Advancing Method-Level Source Code History Generation with Accurate Oracles and Enhanced AlgorithmShahidul Islam, S M Ashik Aowal, Md Sharif Uddin, Shaiful ChowdhuryICSE 2026
它引用的顶会 Paper3
- Evaluating SZZ Implementations Through a Developer-informed OracleGiovanni Rosa, Luca Pascarella, Simone Scalabrino, Rosalia Tufano 等ICSE 2021 · 被引用 42 次
- CodeShovel: Constructing Method-Level Source Code HistoriesFelix Grund, Shaiful Alam Chowdhury, Nick C. Bradley, Braxton Hall 等ICSE 2021 · 被引用 33 次
- Understanding type changes in JavaAmeya Ketkar, Nikolaos Tsantalis, Danny DigFSE 2020 · 被引用 17 次
相关 Paper
- RAT: A Refactoring-Aware Traceability Model for Bug LocalizationFeifei Niu, Wesley K. G. Assunção, LiGuo Huang, Christoph Mayr-Dorn 等ICSE 2023 · 被引用 16 次
- Classifying edits to variability in source codePaul Maximilian Bittner, Christof Tinnes, Alexander Schultheiß, Sören Viegener 等FSE 2022 · 被引用 8 次
- ViolationTracker: Building Precise Histories for Static Analysis ViolationsPing Yu, Yijian Wu, Xin Peng, Jiahan Peng 等ICSE 2023 · 被引用 3 次
- Inferring and Applying Type ChangesAmeya Ketkar, Oleg Smirnov, Nikolaos Tsantalis, Danny Dig 等ICSE 2022 · 被引用 17 次
- A Differential Testing Approach for Evaluating Abstract Syntax Tree Mapping AlgorithmsYuanrui Fan, Xin Xia, David Lo, Ahmed E. Hassan 等ICSE 2021 · 被引用 18 次
