25
Model Driven Architecture (MDA) An Introduction and Commonly Research Problems Ha Lai Duy Østfold University College October 19, 2011

Mda introduction and common research problems

  • Upload
    lai-ha

  • View
    374

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mda   introduction and common research problems

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

Outline

An Introduction

Commonly Research Problems

Conclusions

Page 3: Mda   introduction and common research problems

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

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

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

Model, Language, and System

Page 7: Mda   introduction and common research problems

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

MDA transformation steps

Page 9: Mda   introduction and common research problems

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

OMG's four-layer architecture

Page 11: Mda   introduction and common research problems

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

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

Outline

An Introduction

Commonly Research Problems

Conclusions

Page 14: Mda   introduction and common research problems

Commonly Research Problems

Model

Transformation

Metamodelling

Apply MDA

Page 15: Mda   introduction and common research problems

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

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

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

Transformation research field

Exploring possibilities and eliciting requirements.

Implement the QVT standard.

Evaluate in practical applications.

Page 19: Mda   introduction and common research problems

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

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

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

Outline

An Introduction

Commonly Research Problems

Conclusions

Page 23: Mda   introduction and common research problems

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

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

Thank you