0
An introduction to MDAMDA presentationLai Duy Ha
Outline Motivation The MDA framework Case study – triathlon project
Motivation Boring code cause by:   Follow templates or coding style guide.   The consistent of the system.   The benef...
Motivation   Example of one normal module:     Insert, update, delete record in one table.     Each field has its own v...
Motivation My approach:   Using configuration data.     Validation.     Layout data.   Using template file & complier...
Motivation Challenge   The change of configuration data’s structure over    time.   Need to re-construct the structure ...
Outline Motivation The MDA framework Case study – triathlon project
Overview about MDA Model driven architecture: was  launched by the OMG in 2001.
MDA development process            The artifacts are             formal models             (which can be             unde...
What is a model? A model is always an abstraction of  something that exists in reality. A model is different from the th...
What is a model?
How the models are created? Formally, they are based on a  metamodel. A metamodel is simply a model of a  modeling langu...
How the models are created? Because a metamodel is also a model, a  metamodel itself must be written in a well-  defined ...
Four-level metamodel hierarchy
Transformation While the models can be considered as the core of MDA.  The most important feature, that makes the MDA  di...
Transformation A transformation definition is a set of  transformation rules that together describe  how a model in the s...
The complete MDA framework
Outline Motivation The MDA framework Case study – triathlon project
Case study The sample project is the enterprise  system, which is used to tracking in  triathlon race.
Case study System architecture:   In this case study, we only pay attention to the    communication between client-serve...
Generator project
Metamodel
Model editor
Template editor
Generate code
What’s next !!! Buiding custom Domain Specific  Language using Xtext. Modeling Java Entrerprise System  using mod4j.
References Kleppe, A. G., J. Warmer, et al. 2003 MDA Explained:  TheModel Driven Architecture: Practice and Promise,  Add...
Upcoming SlideShare
Loading in...5
×

An introduction to the MDA

772

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
772
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "An introduction to the MDA"

  1. 1. An introduction to MDAMDA presentationLai Duy Ha
  2. 2. Outline Motivation The MDA framework Case study – triathlon project
  3. 3. Motivation Boring code cause by:  Follow templates or coding style guide.  The consistent of the system.  The benefit of maintaining. Disadvantage  Reduce inspiration of developers.  Silly copy/paste code.
  4. 4. Motivation Example of one normal module:  Insert, update, delete record in one table.  Each field has its own validation.  Field’s presentation (type of control, row, column,….)  etc… One system may contains more than 20+ modules like this
  5. 5. Motivation My approach:  Using configuration data.  Validation.  Layout data.  Using template file & complier to generate code.
  6. 6. Motivation Challenge  The change of configuration data’s structure over time.  Need to re-construct the structure of configuration data.
  7. 7. Outline Motivation The MDA framework Case study – triathlon project
  8. 8. Overview about MDA Model driven architecture: was launched by the OMG in 2001.
  9. 9. MDA development process  The artifacts are formal models (which can be understood by computers)  Models are the core at MDA
  10. 10. What is a model? A model is always an abstraction of something that exists in reality. A model is different from the thing it models, e.g., details are left out or its size is different. A model can be used as an example to produce something that exists in reality. A model is a description of (part of) a system written in a well-defined language.
  11. 11. What is a model?
  12. 12. How the models are created? Formally, they are based on a metamodel. A metamodel is simply a model of a modeling language. It defines the structure, semantics, and constraints for a family of models.
  13. 13. How the models are created? Because a metamodel is also a model, a metamodel itself must be written in a well- defined language. This language is called a metalanguage
  14. 14. Four-level metamodel hierarchy
  15. 15. Transformation While the models can be considered as the core of MDA. The most important feature, that makes the MDA different from the traditional process, is the transformation. There are two types of transformation:  Model 2 model:  QVT, ALT.  Model 2 code:  using template engine such as: Velocity, Acceleo, Xpand, ....
  16. 16. Transformation 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.
  17. 17. The complete MDA framework
  18. 18. Outline Motivation The MDA framework Case study – triathlon project
  19. 19. Case study The sample project is the enterprise system, which is used to tracking in triathlon race.
  20. 20. Case study System architecture:  In this case study, we only pay attention to the communication between client-server via restful service.
  21. 21. Generator project
  22. 22. Metamodel
  23. 23. Model editor
  24. 24. Template editor
  25. 25. Generate code
  26. 26. What’s next !!! Buiding custom Domain Specific Language using Xtext. Modeling Java Entrerprise System using mod4j.
  27. 27. References Kleppe, A. G., J. Warmer, et al. 2003 MDA Explained: TheModel Driven Architecture: Practice and Promise, Addison-Wesley Longman Publishing Co., Inc
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×