Chapter

Fundamental Approaches to Software Engineering

Volume 3922 of the series Lecture Notes in Computer Science pp 262-277

Algebraic Specification of a Model Transformation Engine

  • Artur BoronatAffiliated withLancaster UniversityDepartment of Information Systems and Computation, Technical University of Valencia
  • , José Á. CarsíAffiliated withLancaster UniversityDepartment of Information Systems and Computation, Technical University of Valencia
  • , Isidro RamosAffiliated withLancaster UniversityDepartment of Information Systems and Computation, Technical University of Valencia

Abstract

In Model-Driven Engineering, a software development process is a sequence of manipulation tasks that are applied to models, where model transformations play a relevant role. MOMENT (MOdel manageMENT) is a framework that is integrated in the Eclipse platform. MOMENT provides a collection of generic set-oriented operators to manipulate EMF models. In this paper, we present the model transformation mechanism that is embodied by the ModelGen operator. This operator uses the term rewriting system Maude as transformation engine and provides support for traceability. ModelGen has been defined in an algebraic specification so that we can use formal tools to reason about transformation features, such as termination and confluence. Furthermore, its application to EMF models shows that formal methods can be applied to industrial modeling tools in an efficient way. Finally, we indicate how the ModelGen operator provides support for the QVT Relations language in the MOMENT Framework.

Keywords

Model-Driven Engineering Model Transformation QVT Algebraic Specifications Traceability