1. Understanding MDA
Alberto Lagna
Alberto.Lagna@whiteBOX.it
10 october 2008 Understanding MDA n. 1
2. >apropos alberto.lagna
• Computer Science graduate, Telco master
• Independent consultant, working as software architect /
team leader
• Consulting on design and development of enterprise
systems mainly based on JavaEE.
• 15 years of working experience (2 big MDA projects):
– IT asset repository in a big bank
– MDA tool for software vendor
• JUGTorino member
• Promoting the use of free software and supporting the open
source movement
10 october 2008 Understanding MDA n. 2
3. The Problem
• Business is more demanding
– Market ‘mutates’ constantly
– New kinds of products needed – fast!
– Many new products require new (and innovative) IT solutions
• But:
– IT platforms also mutate constantly
– Legacy systems are tied to legacy platforms
– IT has no universal integrating paradigm
– So, IT culture is constantly tied up in maintenance and therefore
slow to respond to change
• Result:
– Business-IT relationship under strain
– Individual projects have high costs and high risk of failure
– Projects not well-coordinated; no reuse
10 october 2008 Understanding MDA n. 3
4. Contributing Factors
• Business does not describe its needs
and opportunities in a consistent way
• Business and IT speak very different
‘solutioning’ languages
• IT does not follow consistent
processes for creating, acquiring,
integrating and customizing software
• IT solutions are standalone; little
reuse
• Existing layers of legacy software,
hardware and ‘muddleware’
compound all of the above.
10 october 2008 Understanding MDA n. 4
5. Is There a Better Way?
• Much more rapid time-to-
market
• Significantly improved
solutions quality
• Significantly lower solutions
lifecycle costs
• End-to-end traceability –
requirements to deployment
• Improved overall business-IT
alignment
10 october 2008 Understanding MDA n. 5
6. A Different Way of
‘Solutioning’…..
Business
Requirements Enterprise Reuse
Repository
New Business Reusable Business
Models Model Patterns
Reusable
New Service
Service Model
Models
Patterns
New Implementation Reusable
Models Design Model
Patterns
Deployed Reusable
Software Deployed
Components Components
10 october 2008 Understanding MDA n. 6
7. ….and, a Different
Development Process
Business
Models
Business Analyst
Solution
Models
Solutions Designer
Implementation
Models
Software Designer
Deployable
Software
Software Implementer
10 october 2008 Understanding MDA n. 7
8. What about MDA?
Computationally
•Separation of concerns
Independent •Multiple viewpoints
Model (CIM)
Business Analyst •Multi-level reuse
•Precise information flows
Platform
•Full traceability
Independent
Model (PIM)
Solutions Designer
Platform
Specific
Model (PSM)
Software Designer
Deployable
Software
Software Implementer
10 october 2008 Understanding MDA n. 8
9. Why MDA?
• Based on proven best practices and open
standards
• Supported by 900+ OMG members
• Widely implemented in commercial and
open source tools
• Applicable to a wide range of business
and computing problems
• Highly adaptable to different
organizations, project types, toolsets,
technologies, etc.
• Supports all forms of development and
deployment, including outsourcing and off-
shoring
10 october 2008 Understanding MDA n. 9
10. Who is Using MDA?
• Government
• Financial Services
• Aerospace, Defense
• E-commerce
• Telecomm
• Manufacturing
• Biomed
• ……. (see www.omg.org/mda)
10 october 2008 Understanding MDA n. 10
12. MDA tool makers
Adaptive, Inc. Interactive Objects Software; ArcStyler company providing tools
Aonix's Ameos Kabira Technologies, Inc and consulting
ARTiSAN's Real-Time Studio KnowGravity's CASSANDRA
b+m ArchitectureWare Kennedy Carter Ltd: iUML and iCCG
BITPlan GmbH smartGenerator LIANTIS XCoder
The Borland Approach to MDA M2VP's MDA Consulting Services
CalKey Technologies' Caboom MASTER Project
Calytrix Technologies' SIMplicity Mentor Graphics' EDGE UML Suite
Codagen Technologies MetaMatrix Commitment
Codeless Technology's Codeless Metamaxim's modelscope
Consortium for Business Object Promotion MID's Innovator
Consyst's REP ++ Studio The MOD Group's MDA Services
Compuware OptimalJ Neosight Technologies' BoldExpress Studio
Data Access Technologies OCI's MDA Services
David Frankel Consulting ObjectFrontier's FrontierSuite
Domain Solutions' CodeGenie Outline Systems Inc.'s PowerRAD
Dot Net Builders' Constructor Pathfinder Solutions PathMATE
EDCubed's TET Plastic Software's Agora Plastic 2005
E2E Bridge realMethods Framework
Gentastic's e-GEN Select Business Solutions' Select Component Factory
M1 Global Solutions' MDE Mia-Software's Model-In-Action
Hendryx & Associates Softaris Pty. Ltd.: MetaBoss
Herzum Software SoftMetaWare's Generative Model Transformer project
IBM's Rational Software Architect Softeam and Objecteering/UML
IKV++ GmbH; m2c(tm) CARE Technologies S.A. / SOSY Inc's OlivaNova Model Execution System
I-Logix' Rhapsody (Telelogic) Tata Consultancy Services: MasterCraft
innoQ's iQgen Telelogic's TAU Generation2
TechOne's ACE
10 october 2008 Understanding MDA n. 12
13. MDA tools and frameworks
• which one do I have to choose?
• which has the best fit to my requirements?
• what are my requirements?
10 october 2008 Understanding MDA n. 13
14. Realistic Concerns
• Can it really work at our
company?
• How much time/money could it
save?
• Is it really worth the time, cost,
effort and risk to implement?
• What will the ‘to-be’ state of our
organization really look like?
• How do we manage/govern our
organization’s transition to MDA
• How do we get started?
10 october 2008 Understanding MDA n. 14
15. MDA in a nutshell
Computational Business
Independent Model Profile
ence
e fe r r e
Business Analyst - aka Analista
r
a k a ite c tu
a rc h
Platform
Platform
Independent
Independent Model Profile
MDA architect
Application Architect - aka Progettista Software
Platform
Platform Specific
Model
Specific
aka
Profile
r e fe r
p la tf e n c e
o rm
mapping
Code rules
Developer - aka Sviluppatore
10 october 2008 Understanding MDA n. 15
16. MDA in a nutshell READY
NOW
Computational Business
Independent Model Profile
Business Analyst - aka Analista
Platform
Platform
Independent
Independent Model Profile
MDA architect
Application Architect - aka Progettista Software
Platform
Platform Specific
Specific
Model
Profile
mapping
Code rules
Developer - aka Sviluppatore
10 october 2008 Understanding MDA n. 16
17. MDA in a nutshell READY
NOW
Platform
Independent Model
MDA architect
Application Architect - aka Progettista Software
Platform
Specific
Profile
mapping
Code rules
Developer - aka Sviluppatore
10 october 2008 Understanding MDA n. 17
24. Interactive Objects
ArcStyler
• Pluggable and fully extensible MDA
Cartridges:
– Java5
– Web Services (J2EE 1.4 and EJB 2.1)
• BEA WebLogic 8.1
• IBM WebSphere 5.1
• JBoss 4
– .NET
– web applications
• Struts
10 october 2008 Understanding MDA n. 24
25. AndroMDA
• Contains a toolkit for building your own cartridges or
customize existing ones
• Building blocks of AndroMDA are pluggable and can
be exchanged to meet your needs
• Validates the input models using OCL constraints
which are related to the metamodel classes.
• Ready-to-use cartridges for common enterprise
architectures (EJB 2/3, Spring, Hibernate, Struts,
JSF, Axis, jBPM, .NET)
10 october 2008 Understanding MDA n. 25
26. Open ArchitectureWare
• Powerful engine allowing the definition of
generator/transformation workflows.
– Check, OCL-like language, supporting declarative definition
of constraints
– Xtend, functional model transformation language
– Xpand2, powerful template language
– Recipe Framework define validation rules for artefacts
created outside of the generator
– Xtext Framework define a textual modelling language using
a simple BNF-like notation.
• Lack of pre-built MetaModels
10 october 2008 Understanding MDA n. 26
27. What really makes the
difference
…among the different products
– availability of MetaModels to support
transformations
– speed in updating support for upcoming
technologies, standards, approaches
– extensibility of MetaModels
10 october 2008 Understanding MDA n. 27
29. Credits
• The presentation is based on material
produced and with the copyright of The
Voyant Group
(http://www.thevoyantgroup.com/)
10 october 2008 Understanding MDA n. 29