Augmenting Diffs With Runtime Information
Khashayar Etemadi, Aman Sharma, Fernanda Madeiral, Martin Monperrus

TL;DR
This paper introduces Collector-Sahab, a tool that enhances code diffs with runtime information by comparing program states, significantly aiding developers in understanding code changes during review.
Contribution
It presents a novel approach to augment code diffs with runtime data, improving understanding beyond static analysis methods.
Findings
Successfully augmented 95% of 584 diffs in Defects4J
Developers found runtime-augmented diffs promising and useful
Demonstrated effectiveness and usefulness through experiments
Abstract
Source code diffs are used on a daily basis as part of code review, inspection, and auditing. To facilitate understanding, they are typically accompanied by explanations that describe the essence of what is changed in the program. As manually crafting high-quality explanations is a cumbersome task, researchers have proposed automatic techniques to generate code diff explanations. Existing explanation generation methods solely focus on static analysis, i.e., they do not take advantage of runtime information to explain code changes. In this paper, we propose Collector-Sahab, a novel tool that augments code diffs with runtime difference information. Collector-Sahab compares the program states of the original (old) and patched (new) versions of a program to find unique variable values. Then, Collector-Sahab adds this novel runtime information to the source code diff as shown, for instance,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Software Reliability and Analysis Research
