Sig A&D - MDA

1,026 views

Published on

Special Interest Group Architecture & Design meeting 2008 #2: Model Driven Architecture

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,026
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
19
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Anyone witness a successful MDA implementation? Is MDA theoretical and boring? This is informational, not a promo.
  • Sig A&D - MDA

    1. 1. SIG Architecture & Design Model Driven Architecture David Meijers
    2. 2. Agenda <ul><li>Introduction </li></ul><ul><li>Key concept </li></ul><ul><li>Metamodeling </li></ul><ul><li>Benefits & drawbacks </li></ul><ul><li>References </li></ul>
    3. 3. Introduction <ul><li>Framework for SW development defined by OMG </li></ul><ul><li>Focus on using modeling languages as programming languages rather than design languages only. </li></ul><ul><li>The ‘A’ in MDA is the architecture of the development environment </li></ul><ul><li>Standardization of MDSD </li></ul><ul><li>Alternative for non-prevailing, proliferated middleware solutions </li></ul>
    4. 4. Modeling Maturity Levels <ul><li>MML 0: No specification </li></ul><ul><li>MML 1: Textual Specification </li></ul><ul><li>MML 2: Text with Diagrams </li></ul><ul><li>MML 3: Diagrams with Text </li></ul><ul><li>MML 4: Precise Models </li></ul><ul><li>MML 5: Models only </li></ul>
    5. 5. Key Concept JSP Code SQL Code EJB Code CIM  SQL - EJB   EJB - JSP  PSM JSP PSM SQL PSM EJB PIM    
    6. 6. Components <ul><ul><li>Computation independent model (CIM) </li></ul></ul><ul><ul><li>Platform independent model (PIM) </li></ul></ul><ul><ul><li>Platform specific model (PSM) </li></ul></ul><ul><ul><li>PSM bridges </li></ul></ul><ul><ul><li>Code bridges </li></ul></ul>
    7. 7. Traditional SDLC vs MDA SDLC
    8. 8. Metamodeling (1/3) <ul><li>Defining modeling languages </li></ul><ul><li>Metamodel  Modeling language </li></ul><ul><li>Metalanguage  Metamodel </li></ul><ul><li>Modeling language </li></ul><ul><ul><li>Common Warehouse Metamodel (CWM). </li></ul></ul><ul><ul><li>Unified Modeling Language (UML) </li></ul></ul><ul><li>Metalanguage </li></ul><ul><ul><li>Standard that defines the language to define modeling languages </li></ul></ul><ul><ul><li>Meta Object Facility (MOF) </li></ul></ul>
    9. 9. Metamodeling (2/3) Metalanguage Metamodels UML models Real life
    10. 10. Metamodeling (3/3) <ul><li>Transformation definition language </li></ul><ul><ul><li>Metalanguage </li></ul></ul><ul><ul><li>Defines transformations based on the metamodels of languages </li></ul></ul><ul><ul><li>Quey View Transformation (QVT) </li></ul></ul>
    11. 11. MDA Framework
    12. 12. Roles and tools
    13. 13. MDA requirements <ul><li>Modeling languages (UML, OCL, CWM, ...; Meta: MOF) </li></ul><ul><li>Transformation definitions (QVT, scripts) </li></ul><ul><li>Tools </li></ul>
    14. 14. The logo explained <ul><li>Pervasive Services (CORBA services) </li></ul><ul><ul><li>Directory Services </li></ul></ul><ul><ul><li>Transaction Services </li></ul></ul><ul><ul><li>Security Services </li></ul></ul><ul><ul><li>Distributed Event and Notification Services </li></ul></ul><ul><li>Domain Facilities </li></ul>
    15. 15. MDA benefits <ul><li>Portability </li></ul><ul><li>Interoperability </li></ul><ul><li>Productivity </li></ul><ul><li>Locality of change separation of concerns </li></ul><ul><li>Abstraction level </li></ul><ul><li>Documentation </li></ul><ul><li>Design By Contract (OCL) </li></ul>
    16. 16. MDA drawbacks <ul><li>Dynamic specification insufficient in existing modeling languages </li></ul><ul><li>“ ... the transformation tools will not be that good for a few years ...” </li></ul><ul><li>No standard for transformations (mapping models to models or code)  QVT </li></ul><ul><li>How to handle legacy? </li></ul><ul><li>Targeted at large scale projects preferably with multiple-implementation technologies. </li></ul>
    17. 17. Remarks <ul><li>Can you generate a working program from a model? </li></ul><ul><li>MDA and SOA are not mutual exclusive </li></ul><ul><li>MDA and Agile Development are not mutual exclusive </li></ul>
    18. 18. Adoption thermometer <ul><li>2003, MDA was at the peak position. </li></ul><ul><li>Many technologies come apart on the downslope of the curve. </li></ul>
    19. 19. References <ul><li>“ Model Driven Architecture – Applying MDA to Enterprise Computing”, David Frankel </li></ul><ul><li>“ MDA Explained – The Model Driven Architecture: Practice and Promise”, Anneke Kleppe, et al </li></ul><ul><li>“ Model-Driven Software Development – Technology, Engineering, Management”, Thomas Stahl, et al </li></ul>
    20. 20. More References <ul><li>“ MDA Distilled”, Stephen Mellor, et al </li></ul><ul><li>http://www.omg.org/mda </li></ul>

    ×