Lune

ICSE2021Top-tier venue

CodeShovel: Constructing Method-Level Source Code Histories

Felix Grund, Shaiful Alam Chowdhury, Nick C. Bradley, Braxton Hall, Reid Holmes

2021Year
33Citations
10Top-tier citations

Abstract

Source code histories are commonly used by developers and researchers to reason about how software evolves. Through a survey with 42 professional software developers, we learned that developers face significant mismatches between the output provided by developers' existing tools for examining source code histories and what they need to successfully complete their historical analysis tasks. To address these shortcomings, we propose CodeShovel, a tool for uncovering method histories that quickly produces complete and accurate change histories for 90% methods (including 97% of all method changes) outperforming leading tools from both research (e.g, FinerGit) and practice (e.g., IntelliJ / git log). CodeShovel helps developers to navigate the entire history of source code methods so they can better understand how the method evolved. A field study on industrial code bases with 16 industrial developers confirmed our empirical findings of CodeShovel's correctness, low runtime overheads, and additionally showed that the approach can be useful for a wide range of industrial development tasks.

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext edc438c7-cde9-4282-b158-b26e0c32d498

Cited by top-tier papers10

Ask how each one uses it

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines