7 July 2003 MDA presentation Dennis Wagelaar 1 Model ...

concepcionsockSoftware and s/w Development

Aug 15, 2012 (5 years and 2 days ago)

316 views

7 July 2003
MDA presentation Dennis Wagelaar
1
Model-Driven Architecture
Model-Driven Architecture
The current state of affairs
The current state of affairs
7 July 2003
MDA presentation Dennis Wagelaar
1
What is MDA?
What is MDA?

OMG's standard for making software
designs independent of implementation
platforms.

Can be based on other standards, such
as UML, MOF, XMI, CWM.

Allows for gradual refinement of
designs towards implementation
platforms.
Overview
Mapping
Transform.
Practice
Research
7 July 2003
MDA presentation Dennis Wagelaar
1
How does MDA work?
How does MDA work?
Overview
Mapping
Transform.
Practice
Research
Start with a
Platform-
Independent Model

(PIM) representing
business functionality
and behaviour,
undistorted by
technology details.
Platform-
Independent
Model
A Detailed Model,
stating Pre- and
Post-
Conditions in OCL,
and Semantics in
Action Language
Some slides from OMG...
7 July 2003
MDA presentation Dennis Wagelaar
1
How does MDA work?
How does MDA work?
Overview
Mapping
Transform.
Practice
Research
Platform-
Independent
Model
CORBA
Model
MDA tool applies a
standard mapping to
generate
Platform-
Specific Model

(PSM)
from the PIM. Code is
partially automatic,
partially hand-written.
Java/EJB
Model
XML/SOAP
Model
Other
Model
Map a PIM to Many
Middleware
Technologies via
OMG Standard
Mappings
Some slides from OMG...
7 July 2003
MDA presentation Dennis Wagelaar
1
How does MDA work?
How does MDA work?
Overview
Mapping
Transform.
Practice
Research
Some slides from OMG...
Platform-
Independent
Model
CORBA
Model
MDA Tool generates all
or most of the
implementation code
for deployment
technology selected by
the developer.
Java/EJB
Model
CORBA
XML/SOAP
Model
Java/EJB
XML/SOAP
Other
Other
Model
Map PSM to
application
interfaces, code,
GUI descriptors,
SQL queries, etc.
Recent addition:
Computation
Independent Model

(CIM) => Represents a
domain model.
7 July 2003
MDA presentation Dennis Wagelaar
1
MDA Mapping
MDA Mapping
Overview
Mapping
Transform.
Practice
Research
PIM
PSM
Transformati
on
7 July 2003
MDA presentation Dennis Wagelaar
1
MDA Mapping
MDA Mapping
Overview
Mapping
Transform.
Practice
Research


An MDA mapping provides
specifications for transformation of a
PIM into a PSM for a particular platform.
The platform model will determine the
nature of the mapping.” (MDA Guide V
1.0)
7 July 2003
MDA presentation Dennis Wagelaar
1
Model Type Mappings
Model Type Mappings
Overview
Mapping
Transform.
Practice
Research

Maps PIM language types to PSM
language types:

Metamodel Mappings:
types in PIM
and PSM are specified as MOF
metamodels. Uses mapping
rules/algorithms to map PIM type
instances to PSM type instances.

Other Mappings:
e.g. CORBA IDL.
7 July 2003
MDA presentation Dennis Wagelaar
1
Model Instance Mappings
Model Instance Mappings
Overview
Mapping
Transform.
Practice
Research

Transforms specific PIM model
elements:

Marks:
represents a PSM concept
and is applied to a PIM element to
indicate how it is to be transformed.

Most mappings are a combination of
type and instance mappings.

Templates can be associated with a set
of marks.
7 July 2003
MDA presentation Dennis Wagelaar
1
Example: CORBA
Example: CORBA
Overview
Mapping
Transform.
Practice
Research

OMG has defined a UML profile for
CORBA => this serves as a CORBA
platform model
.

Specific stereotypes in the PIM will be
transformed to CORBA stereotypes.
7 July 2003
MDA presentation Dennis Wagelaar
1
Transformation
Marking Transformation
Marking Transformation
Overview
Mapping
Transform.
Practice
Research
PIM
PSM
Marked
PIM
Marks
Mapping
Platform
7 July 2003
MDA presentation Dennis Wagelaar
1
Transformation
Metamodel Transformation
Metamodel Transformation
Overview
Mapping
Transform.
Practice
Research
PIM
PSM
Transf.
Specs
PI Meta-
model
PS Meta-
model
Source language
Target language
Language used
Language used
7 July 2003
MDA presentation Dennis Wagelaar
1
Transformation
Model Transformation
Model Transformation
Overview
Mapping
Transform.
Practice
Research
PIM
PSM
Transf.
Specs
PI
Types
PS
Types
Source types
Target types
Subtypes of
Subtypes of
7 July 2003
MDA presentation Dennis Wagelaar
1
Tools
Tools

ArcStyler

ARI – Kabira

xUML, iUML, iCCG

Codagen Tools

Adaptive Framework

CodigoXpress

Headway ReView

ObjectSpeak

BridgePoint, DesignPoint
Overview
Mapping
Transform.
Practice
Research

OptimalJ – Compuware

Eclipse Modeling
Framework

Netbeans

AndroMDA

MiddleGen

xPetstore (in progress)

CoCompose?

...
7 July 2003
MDA presentation Dennis Wagelaar
1
Cases
Cases

Wells Fargo

Lockheed Martin Aeronautics

GCPR / US Government

Deutsche Bank (using ArcStyler)

...
Overview
Mapping
Transform.
Practice
Research
7 July 2003
MDA presentation Dennis Wagelaar
1
Research topics
Research topics

Model mapping languages.

Model transformation rules/algorithms.

...
Overview
Mapping
Transform.
Practice
Research
7 July 2003
MDA presentation Dennis Wagelaar
1
Research events (1)
Research events (1)

Net.ObjectDays 2002 Conference

OOPSLA 2002
Conference

Workshop on
Generative Techniques in the context of Model-Driven
Architecture

UML 2002 Conference

Workshop in Software Model Engineering

OOPSLA 2003 Conference

Special track on domain-driven development
Overview
Mapping
Transform.
Practice
Research
7 July 2003
MDA presentation Dennis Wagelaar
1
Research events (2)
Research events (2)

UML 2003 Conference

Workshop in Software Model Engineering

Workshop on Model Driven Architecture in the Specification,
Implementation and Validation of Object-oriented Embedded
Systems

Workshop on MDA: Foundations and Applications – 2003

Metamodelling for MDA – 2003

...
Overview
Mapping
Transform.
Practice
Research