1
Muhammad Ali Memon
IRISA Lab / INRIA Rennes, France Triskell Team mmemon@irisa.fr
Ecore
Muhammad Ali Memon IRISA Lab / INRIA Rennes, France Triskell Team - - PowerPoint PPT Presentation
Ecore Muhammad Ali Memon IRISA Lab / INRIA Rennes, France Triskell Team mmemon@irisa.fr 1 2 3 The Unified Modeling Language (UML) Model-Driven Engineering (MDE) Eclipse-Modeling Framework (EMF) Ecore Kermeta
Ecore
The Unified Modeling Language (UML) Model-Driven Engineering (MDE) Eclipse-Modeling Framework (EMF)
Kermeta
Bridging the gap between UML and MDE
Migrating Legacy systems UML models.
New compiler to Kermeta
−
UML Primitive data types are different Ecore data types
−
We create own data types with the reference to the java data type
−
UML Primitive types does not match with the Ecore data types
−
We identify the UML Primitive data types for the UML element We search the Ecore data types correspond to UML Primitive data types that was alreadycreated Assign Ecore data types to the Ecore elements
−
Not direct mapping between both UML and Ecore metametamodels and may be multiple
−
Find all the generalization classes in relationship Collection Match supertypes in Ecore and general relationship within the UML.
−
Create EReference element with the name of association End
−
Create EReference element with the name of association End Set Contaiement property of the EReference to true
−
Difference between data types of lower and upper bounds
− UML lower and upper bounds have different data types and then Ecore lower and upper bound
−
We create the local variable of types UML primitive types and type casted them to Ecore data
−
To find opposite property in other class with the same type as current class.
aspect class Class { method thirdPass() :Void is do All OwnedElements.secondPass() end } aspect class Operation { method thirdPass() :Void is do Create Eoperation in Ecore end }
UML Model Ecore Model
UML Model Ecore Model
UML Model Ecore Model
UML Model Property window of Ecore Model
Interfaces, Constraints, Aggregation