Recording and Replaying System Specific, Source Code Transformations - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2015

Recording and Replaying System Specific, Source Code Transformations

Résumé

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.
Fichier principal
Vignette du fichier
Sant15-SCAM-MacroRecorder.pdf (358.19 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01185639 , version 1 (20-08-2015)

Identifiants

  • HAL Id : hal-01185639 , version 1

Citer

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⟩
289 Consultations
222 Téléchargements

Partager

More