GME-MOF: The MOF-Based GME Metamodeling Environment

16
GME-MOF: The MOF-Based GME Metamodeling Environment Matt Emerson 10/24/2004 <[email protected] .edu> Advisor: Dr. Janos Sztipanovits OOPSLA 2004 Domain- Specific Modeling Workshop

description

OOPSLA 2004 Domain-Specific Modeling Workshop. GME-MOF: The MOF-Based GME Metamodeling Environment. Matt Emerson 10/24/2004 . Advisor: Dr. Janos Sztipanovits. Motivation. The core of MIC is the development of DSMLs. - PowerPoint PPT Presentation

Transcript of GME-MOF: The MOF-Based GME Metamodeling Environment

Page 1: GME-MOF: The MOF-Based GME Metamodeling Environment

GME-MOF: The MOF-Based GME Metamodeling Environment

Matt Emerson10/24/2004

<[email protected]>

Advisor:Dr. Janos Sztipanovits

OOPSLA 2004 Domain-Specific Modeling Workshop

Page 2: GME-MOF: The MOF-Based GME Metamodeling Environment

Motivation The core of MIC is the development of DSMLs. GME provides MetaGME, a metamodeling language

for DSLM specification. The OMG has adopted MOF as the standard

metamodeling language

What is the technical merit of the MOF standard vs. MetaGME?

How can GME adapt to meet this standard with minimum pain?

2OOPSLA 2004 Matt Emerson

Page 3: GME-MOF: The MOF-Based GME Metamodeling Environment

Outline Overview of GME and MetaGME

Overview of MOF

GME-MOF: The MOF-based GME metamodeling environment

3OOPSLA 2004 Matt Emerson

Page 4: GME-MOF: The MOF-Based GME Metamodeling Environment

GME

Meta-programmable modeling tool

Platform for the development of many model-based embedded systems tools

Includes a metamodeling language which predates MOF: MetaGME

4OOPSLA 2004 Matt Emerson

Page 5: GME-MOF: The MOF-Based GME Metamodeling Environment

5

GME Modeling Hierarchy

OOPSLA 2004 Matt Emerson

Page 6: GME-MOF: The MOF-Based GME Metamodeling Environment

MetaGME Based on UML Class Diagrams and OCL Class Stereotypes imply the abstract syntax

of elements in the metamodel: : Compositional containers : Primitive objects : Pointers to model objects : Aggregate containers : Analogous to UML Association Classes : Logical visual partitions of a system

6OOPSLA 2004 Matt Emerson

Page 7: GME-MOF: The MOF-Based GME Metamodeling Environment

MOF

OMG Standard metamodeling language

Simplification of UML Class Diagrams

Used as definition language for many OMG specifications: UML CWM OCL XMI

One use case is the specification of DSMLs

7OOPSLA 2004 Matt Emerson

Page 8: GME-MOF: The MOF-Based GME Metamodeling Environment

GME-MOF: Design Forces Tight correspondence between MetaGME

stereotypes and GME configuration file entities

Existing tools support, including: Constraint Checker Metamodel Interpreter

Existing user base and modeling languages Kinship of MOF and MetaGME

Both based on UML Class Diagrams

8OOPSLA 2004 Matt Emerson

Page 9: GME-MOF: The MOF-Based GME Metamodeling Environment

GME-MOF

9OOPSLA 2004 Matt Emerson

Page 10: GME-MOF: The MOF-Based GME Metamodeling Environment

Leverages existing metamodeling language

Leverages existing metamodel translation tool

MOF provides an MDA-style interface for GME Metamodeling

10

GME-MOF

OOPSLA 2004 Matt Emerson

Page 11: GME-MOF: The MOF-Based GME Metamodeling Environment

Model-to-model translation Design using the Graph Rewriting and Transformation Language

(GReAT) Guided by MOF Tags Not isomorphic

11

MOF-to-MetaGME Translation

MOF Concept MetaGME ConceptPackage FolderClass Model, Atom, Set, ReferenceAggregate Association CompositionNon-Aggregate Association Connection, SetMembership,

ReferToString-typed Attribute FieldAttribute

OOPSLA 2004 Matt Emerson

Page 12: GME-MOF: The MOF-Based GME Metamodeling Environment

Match the pattern visualized in black. Create the pattern visualized in blue.

12

Specifying the TranslationMapping MOF Primitive-type Attributes

to MetaGME FieldAttributes

OOPSLA 2004 Matt Emerson

Page 13: GME-MOF: The MOF-Based GME Metamodeling Environment

Translation Limitations How to meaningfully represent in GME:

Singleton Classes Derived Attributes Derived Associations

Attributes of arbitrary types

MOF-style metamodel importation

13OOPSLA 2004 Matt Emerson

Page 14: GME-MOF: The MOF-Based GME Metamodeling Environment

14

Translation Example: UML Class Diagrams

Output (MetaGME)

Input (MOF)

OOPSLA 2004 Matt Emerson

Page 15: GME-MOF: The MOF-Based GME Metamodeling Environment

15

GME-MOF: An MDA Interface for GME

Leverages existing metamodeling language

Leverages existing metamodel translation tool

MOF provides an MDA-style interface for GME Metamodeling

Solution illustrates the versatility of metamodeling and meta-programmable tools

OOPSLA 2004 Matt Emerson

Page 16: GME-MOF: The MOF-Based GME Metamodeling Environment

GME-MOF: The MOF-Based GME Metamodeling Environment

Matt Emerson10/24/2004

<[email protected]>

Advisor:Dr. Janos Sztipanovits

OOPSLA 2004 Domain-Specific Modeling Workshop