ATL Use Case - Using a UML modeler to generate metamodels
Keywords
Overview
This use case presents how the Papyrus UML Modeler could be used to generate metamodels. Papyrus is a dedicated tool for modelling within UML2 developed by CEA LIST. This open source tool is based on the Eclipse environment.
The metamodel will be generated from its description done via a UML 2 Class Diagram produced with Papyrus (an open-source graphical modeler tool for UML2 and based on Eclipse). UML 2 Class Diagrams are the mainstay of object-oriented analysis and design. They show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and attributes of the classes. Class diagrams are used for a wide variety of purposes, including both conceptual/domain modeling and detailed design modeling. The figure below presents an example of UML Class Diagram made with Papyrus.
From a UML Class Diagram, there is the possibility to generate a metamodel in the following formats:
To see how to configure and run the "Generate Metamodel" ATL service, please take a look to the User Guide. Each action (e.g. "Generate metamodel in Ecore") will execute a corresponding ATL model transformation (e.g. "UML 2.0 to Ecore"). Both following figures present samples of generated metamodels in EMF XMI 2.0 and KM3 formats. |
Related Use Cases
None at the current time. |
Download
Papyrus, an open-source graphical modeler tool for UML2 and based on Eclipse. | |
KM3 |
KM3 is a neutral language to write metamodels and to define DSL. |
ATL Service |
Papyrus add-in containing the implementation of this use case. |
User Guide |
This user guide explains how to configure and launch the ATL service in Papyrus. |
Source code |
Source code of the ATL scenario used in this use case. |
Acknowledgement
The present work is being supported by the Usine Logicielle project of the System@tic Paris Region Cluster. |
General Information
- May 2007
- By Freddy Allilaire (INRIA), Rémi Schnekenburger (CEA LIST)
Please, ask your questions on the M2M newsgroup