Mda introduction and common research problems


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Mda introduction and common research problems

  1. 1. Model Driven Architecture (MDA)An Introduction andCommonly Research ProblemsHa Lai DuyØstfold University CollegeOctober 19, 2011
  2. 2. Outline An Introduction Commonly Research Problems Conclusions
  3. 3. Overview about MDA Model driven architecture: was launched by the OMG in 2001. Model-centric approach: models are the main focus of the software process.
  4. 4. Traditional SoftwareDevelopment problems  Most of the artifacts during the first three phases is just paper and nothing more.  Productivity  Maintenance  Document  Portability
  5. 5. MDA development process  The artifacts are formal models (which can be understood by computers)  Models are the core at MDA
  6. 6. Model, Language, and System
  7. 7. MDA models Platform Independent Model (PIM)  a high level abstraction.  independent of any implementation technology. Platform Specific Model (PSM)  tailored to specify system in terms of the implementation. Code  final artifacts in the development
  8. 8. MDA transformation steps
  9. 9. Meta-model A meta-model is simply a model of a modeling language. It defines the structure, semantics, and constraints for a family of models.
  10. 10. OMGs four-layer architecture
  11. 11. Transformation Transformation is the automatic process to transform a set of source models to a set of target model.  Model to text: Visitor, template.  Model to model: OMG’s QVT specification in 2008.
  12. 12. The Complete MDA FrameworkM3 MOF is is written written in in QVT is writtenM2 in UML Transformation ERD Profiles definition Profiles definesM1 Class Transform to Relational diagram diagram
  13. 13. Outline An Introduction Commonly Research Problems Conclusions
  14. 14. Commonly Research Problems Model Transformation Metamodelling Apply MDA
  15. 15. Model research field Evaluate the essential of UML in practice.  Due to its complexity & power.  Like 3GLs, it does not fit to model specific domain problems.
  16. 16. Model research field Domain Specific Language (DSL)  Propose the modeling language for specific domains e.g. ERD, EBNF, XML Schema, Ontology language,...  Buid the model-based DSL framework to take the advantage of MDA features e.g. code generation, transformation…  Support to develop a new DSL language in both notation and textual ways.
  17. 17. Model research field Model operation  Support version control system:  Models comparision.  Conflict detection and resolution.  Copy-paste-merge operations.  Model validation  Debuging model  Model query  Model transaction
  18. 18. Transformation research field Exploring possibilities and eliciting requirements. Implement the QVT standard. Evaluate in practical applications.
  19. 19. Transformation research field Model interpretation vs. code generation  Pros:  It enables faster changes.  It enables changes at runtime.  Easier to update and scale.  Cons:  Customers could not choose their execution environment.  We have the freedom at the model aspect, but we left the freedom at the generator rules.
  20. 20. Metamodelling research field The evolution of the meta-models:  Transformation defination should be changed to adapt with new meta-model.  Model is invalid with the new version of meta-model.  Co-evolution approaches.
  21. 21. Apply MDA in practice Software development approaches:  Agile MDA. MDA framework introduces some risks:  It is too rigid:  requirement team should understand what is allowed and what is not.  The roles is changed in MDA approaches. Enviroment for MDA  Education.  Culture gap.
  22. 22. Outline An Introduction Commonly Research Problems Conclusions
  23. 23. Conclusions Advantages:  Gain of productivity.  High level of abstraction.  Documentation.  Maintaining.  ... Disadvantages:  Rigidity.  Require the new roles in software development.  Not fully implementation.  Does not support version control for collaboration.
  24. 24. Conclusions Problem statements:  The rigidtity of MDA:  When request of change comes:  Going back and modify the meta-models  Effect to other artifacts e.g. models  Hack the code:  Not well documented  maintaning.  Manipulating the source models to make it procudes desire result.  Models are not truly reflected to the problem domain.
  25. 25. Thank you