International Conference Short paper

Slicing and Replaying Code Change History

Katsuhisa Maruyama, Eijiro Kitsu, Takayuki Omori, Shinpei Hayashi

In Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering (ASE 2012), pp. 246–249, Essen, Germany, September 2012.

Abstract

Change-aware development environments have recently become feasible and reasonable. These environments can automatically record fine-grained code changes on a program and allow programmers to replay the recorded changes in chronological order. However, they do not always need to replay all the code changes to investigate how a particular entity of the program has been changed. Therefore, they often skip several code changes of no interest. This skipping action is an obstacle that makes many programmers hesitate in using existing replaying tools. This paper proposes a slicing mechanism that can extract only code changes necessary to construct a particular class member of a Java program from the whole history of past code changes. In this mechanism, fine-grained code changes are represented by edit operations recorded on source code of a program. The paper also presents a running tool that implements the proposed slicing and replays its resulting slices. With this tool, programmers can avoid replaying edit operations nonessential to the construction of class members they want to understand.

BibTeX

@incollection{maruyama-ase2012,
    author = {Katsuhisa Maruyama and Eijiro Kitsu and Takayuki Omori and Shinpei Hayashi},
    title = {Slicing and Replaying Code Change History},
    booktitle = {Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering},
    pages = {246--249},
    doi = {10.1145/2351676.2351713},
    year = 2012,
}
Type
International Conference
Conference
ASE 2012
Location
Essen, Germany
Presented
September 5, 2012
Volume / Pages
pp. 246–249
Acceptance rate
21+26/138 (15%)
DOI
10.1145/2351676.2351713