Title
Answering software evolution questions: An empirical evaluation
Abstract
Context: Developers often need to find answers to questions regarding the evolution of a system when working on its code base. While their information needs require data analysis pertaining to different repository types, the source code repository has a pivotal role for program comprehension tasks. However, the coarse-grained nature of the data stored by commit-based software configuration management systems often makes it challenging for a developer to search for an answer. Objective: We present Replay, an Eclipse plug-in that allows developers to explore the change history of a system by capturing the changes at a finer granularity level than commits, and by replaying the past changes chronologically inside the integrated development environment, with the source code at hand. Method: We conducted a controlled experiment to empirically assess whether Replay outperforms a baseline (SVN client in Eclipse) on helping developers to answer common questions related to software evolution. Results: The experiment shows that Replay leads to a decrease in completion time with respect to a set of software evolution comprehension tasks. Conclusion: We conclude that there are benefits in using Replay over the state of the practice tools for answering questions that require fine-grained change information and those related to recent changes.
Year
DOI
Venue
2013
10.1016/j.infsof.2012.09.001
Information & Software Technology
Keywords
DocType
Volume
controlled experiment,change history,code base,data analysis,past changes chronologically,commit-based software configuration management,source code repository,software evolution question,source code,software evolution,empirical evaluation,software evolution comprehension task
Journal
55
Issue
ISSN
Citations 
4
0950-5849
2
PageRank 
References 
Authors
0.36
28
4
Name
Order
Citations
PageRank
Lile Hattori122110.88
Marco D'Ambros248121.15
Michele Lanza32197124.38
Mircea Lungu454539.17