Download - Understanding Mda

Transcript
Page 1: Understanding Mda

10 october 2008 Understanding MDA n. 1

Understanding MDA

Alberto [email protected]

Page 2: Understanding Mda

10 october 2008 Understanding MDA n. 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

Page 3: Understanding Mda

10 october 2008 Understanding MDA n. 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

Page 4: Understanding Mda

10 october 2008 Understanding MDA n. 4

Contributing Factors

• Business does not describe its needsand opportunities in a consistent way

• Business and IT speak very different‘solutioning’ languages

• IT does not follow consistentprocesses for creating, acquiring,integrating and customizing software

• IT solutions are standalone; littlereuse

• Existing layers of legacy software,hardware and ‘muddleware’compound all of the above.

Page 5: Understanding Mda

10 october 2008 Understanding MDA n. 5

Is There a Better Way?

• Much more rapid time-to-market

• Significantly improvedsolutions quality

• Significantly lower solutionslifecycle costs

• End-to-end traceability –requirements to deployment

• Improved overall business-ITalignment

Page 6: Understanding Mda

10 october 2008 Understanding MDA n. 6

A Different Way of‘Solutioning’…..

New BusinessModels

New Service Models

New ImplementationModels

Reusable BusinessModel Patterns

ReusableService Model

Patterns

ReusableDesign Model

Patterns

DeployedSoftware

Components

ReusableDeployed

Components

BusinessRequirements Enterprise Reuse

Repository

Page 7: Understanding Mda

10 october 2008 Understanding MDA n. 7

….and, a DifferentDevelopment Process

Business Analyst

Solutions Designer

Software Designer

ImplementationModels

DeployableSoftware

BusinessModels

SolutionModels

Software Implementer

Page 8: Understanding Mda

10 october 2008 Understanding MDA n. 8

What about MDA?

Business Analyst

Solutions Designer

Software Designer

PlatformSpecific

Model (PSM)

DeployableSoftware

ComputationallyIndependentModel (CIM)

PlatformIndependentModel (PIM)

Software Implementer

•Separation of concerns•Multiple viewpoints•Multi-level reuse•Precise information flows•Full traceability

Page 9: Understanding Mda

10 october 2008 Understanding MDA n. 9

Why MDA?

• Based on proven best practices and openstandards

• 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 anddeployment, including outsourcing and off-shoring

Page 10: Understanding Mda

10 october 2008 Understanding MDA n. 10

Who is Using MDA?

• Government• Financial Services• Aerospace, Defense• E-commerce• Telecomm• Manufacturing• Biomed• ……. (see www.omg.org/mda)

Page 11: Understanding Mda

10 october 2008 Understanding MDA n. 11

MDA committed companies

Page 12: Understanding Mda

10 october 2008 Understanding MDA n. 12

MDA tool makersAdaptive, Inc. Interactive Objects Software; ArcStyler company providing toolsAonix's Ameos Kabira Technologies, Inc and consultingARTiSAN's Real-Time Studio KnowGravity's CASSANDRAb+m ArchitectureWare Kennedy Carter Ltd: iUML and iCCGBITPlan GmbH smartGenerator LIANTIS XCoderThe Borland Approach to MDA M2VP's MDA Consulting ServicesCalKey Technologies' Caboom MASTER ProjectCalytrix Technologies' SIMplicity Mentor Graphics' EDGE UML SuiteCodagen Technologies MetaMatrix CommitmentCodeless Technology's Codeless Metamaxim's modelscopeConsortium for Business Object Promotion MID's InnovatorConsyst's REP ++ Studio The MOD Group's MDA ServicesCompuware OptimalJ Neosight Technologies' BoldExpress StudioData Access Technologies OCI's MDA ServicesDavid Frankel Consulting ObjectFrontier's FrontierSuiteDomain Solutions' CodeGenie Outline Systems Inc.'s PowerRADDot Net Builders' Constructor Pathfinder Solutions PathMATEEDCubed's TET Plastic Software's Agora Plastic 2005E2E Bridge realMethods FrameworkGentastic's e-GEN Select Business Solutions' Select Component FactoryM1 Global Solutions' MDE Mia-Software's Model-In-ActionHendryx & Associates Softaris Pty. Ltd.: MetaBossHerzum Software SoftMetaWare's Generative Model Transformer projectIBM's Rational Software Architect Softeam and Objecteering/UMLIKV++ GmbH; m2c(tm) CARE Technologies S.A. / SOSY Inc's OlivaNova Model Execution SystemI-Logix' Rhapsody (Telelogic) Tata Consultancy Services: MasterCraftinnoQ's iQgen Telelogic's TAU Generation2TechOne's ACE

Page 13: Understanding Mda

10 october 2008 Understanding MDA n. 13

MDA tools and frameworks

• which one do I have to choose?• which has the best fit to my requirements?• what are my requirements?

Page 14: Understanding Mda

10 october 2008 Understanding MDA n. 14

Realistic Concerns

• Can it really work at ourcompany?

• How much time/money could itsave?

• Is it really worth the time, cost,effort and risk to implement?

• What will the ‘to-be’ state of ourorganization really look like?

• How do we manage/govern ourorganization’s transition to MDA

• How do we get started?

Page 15: Understanding Mda

10 october 2008 Understanding MDA n. 15

MDA in a nutshell

Computational

Independent Model

Business Analyst - aka Analista

Platform

Independent Model

Application Architect - aka Progettista Software

Developer - aka Sviluppatore

Platform Specific

Model

Code

MDA architect

Business

Profile

Platform

Independent

Profile

Platform

Specific

Profile

mapping

rules

aka reference

architecture

aka reference platform

Page 16: Understanding Mda

10 october 2008 Understanding MDA n. 16

MDA in a nutshell READYNOW

Computational

Independent Model

Business Analyst - aka Analista

Platform

Independent Model

Application Architect - aka Progettista Software

Developer - aka Sviluppatore

Platform Specific

Model

Code

MDA architect

Business

Profile

Platform

Independent

Profile

Platform

Specific

Profile

mapping

rules

Page 17: Understanding Mda

10 october 2008 Understanding MDA n. 17

MDA in a nutshell READYNOW

Platform

Independent Model

Application Architect - aka Progettista Software

Developer - aka Sviluppatore

Code

MDA architect

Platform

Specific

Profile

mapping

rules

Page 18: Understanding Mda

10 october 2008 Understanding MDA n. 18

PSM static diagrams

Page 19: Understanding Mda

10 october 2008 Understanding MDA n. 19

PSM dynamic diagrams

Page 20: Understanding Mda

10 october 2008 Understanding MDA n. 20

MDA tool requirements

• for YOUR target platform– supports custom metamodels

• addresses full lifecycle– metamodels, tranformation, generation

• Advanced capabilities– reverse eng, versioning, validation, simulation

• integration with tools• standard conformance

Page 21: Understanding Mda

10 october 2008 Understanding MDA n. 21

MDA products fulfilling reqs

• Commercial– Compuware OptimalJ– IO Arcstyler

• Open Source– AndroMDA– OpenArchitectureWare

Page 22: Understanding Mda

10 october 2008 Understanding MDA n. 22

Compuware OptimalJ

• Metamodels– Domain Model, highest level of abstraction– Application Model, the application architecture– Code Model, the syntactically precise code

• Technology patterns– transformation Domain Model -> the Application

Model.• Implementation patterns

– transformation Application Model ->Code Model.

Page 23: Understanding Mda

10 october 2008 Understanding MDA n. 23

Compuware OptimalJfeatures

Page 24: Understanding Mda

10 october 2008 Understanding MDA n. 24

Interactive ObjectsArcStyler

• Pluggable and fully extensible MDACartridges:– Java5 – Web Services (J2EE 1.4 and EJB 2.1)

• BEA WebLogic 8.1 • IBM WebSphere 5.1 • JBoss 4

– .NET – web applications

• Struts

Page 25: Understanding Mda

10 october 2008 Understanding MDA n. 25

AndroMDA

• Contains a toolkit for building your own cartridges orcustomize existing ones

• Building blocks of AndroMDA are pluggable and canbe exchanged to meet your needs

• Validates the input models using OCL constraintswhich are related to the metamodel classes.

• Ready-to-use cartridges for common enterprisearchitectures (EJB 2/3, Spring, Hibernate, Struts,JSF, Axis, jBPM, .NET)

Page 26: Understanding Mda

10 october 2008 Understanding MDA n. 26

Open ArchitectureWare

• Powerful engine allowing the definition ofgenerator/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

Page 27: Understanding Mda

10 october 2008 Understanding MDA n. 27

What really makes thedifference

…among the different products– availability of MetaModels to support

transformations– speed in updating support for upcoming

technologies, standards, approaches– extensibility of MetaModels

Page 28: Understanding Mda

10 october 2008 Understanding MDA n. 28

Suggested deepenings

• http://www.omg.org/mda• http://mdaforum.soluta.net

• M. Guttman - Real life MDA

Page 29: Understanding Mda

10 october 2008 Understanding MDA n. 29

Credits

• The presentation is based on materialproduced and with the copyright of TheVoyant Group(http://www.thevoyantgroup.com/)

Page 30: Understanding Mda

10 october 2008 Understanding MDA n. 30

Q&A

[email protected]