mda introduction and common research problems
TRANSCRIPT
![Page 1: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/1.jpg)
Model Driven Architecture (MDA)
An Introduction and
Commonly Research Problems
Ha Lai Duy
Østfold University College
October 19, 2011
![Page 2: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/2.jpg)
Outline
An Introduction
Commonly Research Problems
Conclusions
![Page 3: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/3.jpg)
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.
![Page 4: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/4.jpg)
Traditional Software Development problems
Most of the artifacts during the first three phases is just paper and nothing more.
Productivity
Maintenance
Document
Portability
![Page 5: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/5.jpg)
MDA development process
The artifacts are formal models (which can be understood by computers)
Models are the core at MDA
![Page 6: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/6.jpg)
Model, Language, and System
![Page 7: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/7.jpg)
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
![Page 8: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/8.jpg)
MDA transformation steps
![Page 9: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/9.jpg)
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.
![Page 10: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/10.jpg)
OMG's four-layer architecture
![Page 11: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/11.jpg)
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.
![Page 12: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/12.jpg)
The Complete MDA Framework
M1
M2
M3
Class diagram
Relationaldiagram
UML Profiles
ERD Profiles
MOF
QVT
Transform to
Transformation definition
defines
is written
in
is written
in
is written
in
![Page 13: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/13.jpg)
Outline
An Introduction
Commonly Research Problems
Conclusions
![Page 14: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/14.jpg)
Commonly Research Problems
Model
Transformation
Metamodelling
Apply MDA
![Page 15: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/15.jpg)
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.
![Page 16: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/16.jpg)
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.
![Page 17: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/17.jpg)
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
![Page 18: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/18.jpg)
Transformation research field
Exploring possibilities and eliciting requirements.
Implement the QVT standard.
Evaluate in practical applications.
![Page 19: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/19.jpg)
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.
![Page 20: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/20.jpg)
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.
![Page 21: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/21.jpg)
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.
![Page 22: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/22.jpg)
Outline
An Introduction
Commonly Research Problems
Conclusions
![Page 23: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/23.jpg)
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.
![Page 24: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/24.jpg)
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.
![Page 25: Mda introduction and common research problems](https://reader034.vdocuments.mx/reader034/viewer/2022052600/5579fcd3d8b42abc2e8b5169/html5/thumbnails/25.jpg)
Thank you