• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
MDA Framework
 

MDA Framework

on

  • 527 views

 

Statistics

Views

Total Views
527
Views on SlideShare
527
Embed Views
0

Actions

Likes
0
Downloads
5
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • we defined a model as a description of (part of) a system written in a well-defined language. A well-defined language was defined as a language which is suitable for automated interpretation by a computer.
  • If we define the class Cat in a model, we can have instances of Cat, (like "our neighbor's cat") in the system. A language also defines what elements can exist. It defines the elements that can be used in a model. For example, the UML language defines that we can use the concepts "Class," "State," "package," and so on, in a UML model. Looking at this similarity, we can describe a language by a model: the model of the language describes the elements that can be used in the language.
  • Constitue: cautao

MDA Framework MDA Framework Presentation Transcript

  • MDA
  • Content• MDA framework – Transformation• Meta-model – Meta-language
  • • A transformation tool takes a PIM and transforms it into a PSM.• A second (or the same) transformation tool transforms the PSM to code.• We have shown the transformation tool as a black box. It takes one model as input and produces a second model as its output.
  • • When we open up the transformation tool and take a look inside, we can see what elements are involved in performing the transformation.• Somewhere inside the tool there is a definition that describes how a model should be transformed.
  • • For example, define a transformation definition from UML to C#, which describes which C# should be generated for a (or any!) UML model.• Transformation definition consists of a collection of transformation rules (unambiguous).• We can now define transformation, transformation rule, and transformation definition.
  • • A transformation is the automatic generation of a target model from a source model, according to a transformation definition.• A transformation definition is a set of transformation rules that together describe how a model in the source language can be transformed into a model in the target language.• A transformation rule is a description of how one or more constructs in the source language can be transformed into one or more constructs in the target language.
  • METAMODELINGIntroduction to Metamodeling Models, languages, metamodels, and metalanguages• We defined a model as a description of (part of) a system written in a well-defined language.• How do we define such a well- defined language?
  • • Languages were often defined • However, BNF restricts us to using a grammar in BNF. languages that are purely text• For example, have a graphical based. syntax, like UML. • We will need a different mechanism for defining languages in the MDA context. • This mechanism is called metamodeling.
  • Models, languages, metamodels, and metalanguages• A model defines what elements can exist in a system.• The model of the language describes the elements that can be used in the language.
  • • Because a metamodel is also a model, a metamodel itself must be written in a well-defined language.• This language is called a metalanguage.• First, a metalanguage plays a different role than a modeling language in the MDA framework, because it is a specialized language to describe modeling languages.• Secondly, the metamodel completely defines the language.
  • The Use of Metamodeling in the MDA• First, we need a mechanism to define modeling languages, such that they are unambiguously defined, a transformation tool can then read, write, and understand the models. Within MDA we define languages through metamodels.• Secondly, the transformation rules that constitute a transformation definition describe how a model in a source language can be transformed into a model in a target language. These rules use the metamodels of the source and target languages to define the transformations.