Skip to Main content Skip to Navigation
Conference papers

Recording and Replaying System Specific, Source Code Transformations

Abstract : During its lifetime, a software system is under continuous maintenance to remain useful. Maintenance can be achieved in activities such as adding new features, fixing bugs, improving the system's structure, or adapting to new APIs. In such cases, developers sometimes perform sequences of code changes in a systematic way. These sequences consist of small code changes (e.g., create a class, then extract a method to this class), which are applied to groups of related code entities (e.g., some of the methods of a class). This paper presents the design and proof-of-concept implementation of a tool called MacroRecorder. This tool records a sequence of code changes, then it allows the developer to generalize this sequence in order to apply it in other code locations. In this paper, we discuss MacroRecorder's approach that is independent of both development and transformation tools. The evaluation is based on previous work on repetitive code changes related to rearchitecting. MacroRecorder was able to replay 92% of the examples, which consisted in up to seven code entities modified up to 66 times. The generation of a customizable, large-scale transformation operator has the potential to efficiently assist code maintenance.
Complete list of metadata

Cited literature [17 references]  Display  Hide  Download
Contributor : Lse Lse Connect in order to contact the contributor
Submitted on : Thursday, August 20, 2015 - 5:49:09 PM
Last modification on : Wednesday, March 23, 2022 - 3:51:21 PM
Long-term archiving on: : Wednesday, April 26, 2017 - 10:10:15 AM


Files produced by the author(s)


  • HAL Id : hal-01185639, version 1


Gustavo Santos, Anne Etien, Nicolas Anquetil, Stéphane Ducasse, Marco Tulio Valente. Recording and Replaying System Specific, Source Code Transformations. 15th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM), Sep 2015, Bremen, Germany. pp.10. ⟨hal-01185639⟩



Record views


Files downloads