Transcript Platform

3 April
SOA: Services Oriented Architecture
MDA: Model Driven Architecture
SOA


Is it just good architecture?
Potential value



Weaker designers
Consistency across organizations
Client-oriented
Relationship Between Model
and Code
What is MDA?

Modelling languages as declarative
programming languages


Higher level of abstraction
Separation of design from
implementation
OMG Model Oriented Architecture

Technologies

Platforms

Services

Domains
Program generation from models


MDA is the latest
Earlier




CASE-tools in 1980’s
object-oriented IDEs in 1990’s
UML tools
…
Model Driven
Architecture
• New orientation for OMG activities
– New step beyond the Object
Management Architecture (OMA)
• Models are centric!
– Target middleware is not important!
• Focus on Platform Independent Models (PIM)
– Without middleware details
• Abstract Platform Specific Models (PSM)
– Including all middleware details
• Define PIM to PSM transformations
• Preserving PIM when new middleware appears!
Building an MDA Application
PlatformIndependent
Model
A Detailed Model,
stating Pre- and PostConditions in Object
Constraint Language,
and Semantics in
an action language
Start with a PlatformIndependent Model
(PIM) representing
business functionality
and behavior,
undistorted by
technology details.
Generating Platform-Specific
Model
PlatformIndependent
Model
CORBA
Model
Map a PIM to Specific
Middleware
Technologies via OMG
Standard Mappings
MDA tool applies a
standard mapping to
generate PlatformSpecific Model (PSM)
from the PIM. Code is
partially automatic,
partially hand-written.
Mapping to Multiple
Deployment Technologies
PlatformIndependent
Model
CORBA
Model
Java/EJB
Model
Map a PIM to Many
Middleware
Technologies via OMG
Standard Mappings
XML/SOAP
Model
Other
Model
MDA tool applies
an standard
mapping to
generate PlatformSpecific Model
(PSM) from the PIM.
Code is partially
automatic, partially
hand-written.
Generating Implementations
Map PSM to application
interfaces, code, GUI
descriptors, SQL
queries, etc.
PlatformIndependent
Model
CORBA
Model
CORBA
Java/EJB
Model
XML/SOAP
Java/EJB
XML/SOAP
Model
Other
Model
Other
MDA Tool generates all
or most of the
implementation code
for deployment
technology selected
by the developer.