Generic Model Refactorings

  • Authors:
  • Naouel Moha;Vincent Mahé;Olivier Barais;Jean-Marc Jézéquel

  • Affiliations:
  • INRIA Rennes --- Bretagne Atlantique/IRISA,Université Rennes 1, Triskell Team, Rennes Cedex, France 35042;INRIA Rennes --- Bretagne Atlantique/IRISA,Université Rennes 1, Triskell Team, Rennes Cedex, France 35042;INRIA Rennes --- Bretagne Atlantique/IRISA,Université Rennes 1, Triskell Team, Rennes Cedex, France 35042;INRIA Rennes --- Bretagne Atlantique/IRISA,Université Rennes 1, Triskell Team, Rennes Cedex, France 35042

  • Venue:
  • MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many modeling languages share some common concepts and principles. For example, Java, MOF, and UML share some aspects of the concepts of classes, methods, attributes, and inheritance. However, model transformations such as refactorings specified for a given language cannot be readily reused for another language because their related metamodels may be structurally different. Our aim is to enable a flexible reuse of model transformations across various metamodels. Thus, in this paper, we present an approach allowing the specification of generic model transformations, in particular refactorings, so that they can be applied to different metamodels. Our approach relies on two mechanisms: (1) an adaptation based mainly on the weaving of aspects; (2) the notion of model typing, an extension of object typing in the model-oriented context. We validated our approach by performing some experiments that consisted of specifying three well known refactorings ( Encapsulate Field,Move Method, and Pull Up Method) and applying each of them onto three different metamodels (Java, MOF, and UML).