System Specific, Source Code Transformations

Abstract : During its lifetime, a software system might undergo a major transformation effort in its structure, for example to migrate to a new architecture or bring some drastic improvements to the system. Particularly in this context, we found evidences that some sequences of code changes are made in a systematic way. These sequences are composed of small code transformations (e.g., create a class, move a method) which are repeatedly applied to groups of related entities (e.g., a class and some of its methods). A typical example consists in the systematic introduction of a Factory design pattern on the classes of a package. We define these sequences as transformation patterns. In this paper, we identify examples of transformation patterns in real world software systems and study their properties: (i) they are specific to a system; (ii) they were applied manually; (iii) they were not always applied to all the software entities which could have been transformed; (iv) they were sometimes complex; and (v) they were not always applied in one shot but over several releases. These results suggest that transformation patterns could benefit from automated support in their application. From this study, we propose as future work to develop a macro recorder, a tool with which a developer records a sequence of code transformations and then automatically applies them in other parts of the system as a customizable, large-scale transformation operator.
Type de document :
Communication dans un congrès
31st IEEE International Conference on Software Maintenance and Evolution (ICSME), Sep 2015, Bremen, Germany. pp.10
Liste complète des métadonnées

Littérature citée [31 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01185637
Contributeur : Lse Lse <>
Soumis le : jeudi 20 août 2015 - 17:41:38
Dernière modification le : mercredi 25 avril 2018 - 15:43:21
Document(s) archivé(s) le : mercredi 26 avril 2017 - 10:11:19

Fichier

Sant15-ICSME-TransformationPat...
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-01185637, version 1

Collections

Citation

Gustavo Santos, Nicolas Anquetil, Anne Etien, Stéphane Ducasse, Marco Tulio Valente. System Specific, Source Code Transformations. 31st IEEE International Conference on Software Maintenance and Evolution (ICSME), Sep 2015, Bremen, Germany. pp.10. 〈hal-01185637〉

Partager

Métriques

Consultations de la notice

297

Téléchargements de fichiers

181