Introduction to MDA (Model Driven Architecture) CYT.

Slides:



Advertisements
Similar presentations
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Advertisements

1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK.
1Model Driven Architecture – 3. März 2008 – Siegfried Nolte 1.UML – What is it and what is it good for ? 2.MDA – What is it and what is it good for ? 3.MDA.
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße 14, Augsburg Tel.: (+49) 821/ , Fax:
OMG‘s MDA: An Overview copyright © 2001, MATHEMA AG OMG‘s MDA: An Overview OMG‘s MDA: An Overview Markus Völter
MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Jiannong IMC Lab - Department of Computing, Hong Kong Polytechnic Univ. Slide 1 Architecture Description of Distributed Systems using UML and XML.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
© Copyright Eliyahu Brutman Programming Techniques Course.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
ARCH-6: UML Modeling with Enterprise Architect Phillip Magnay Technical Architect.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
Model Transformations
Desmond DSouza President Kinetium Desmond: add success stories, biz slant (investment and ROI), risks and critical.
Model-Driven Architecture & OptimalJ Roland T. Craddolph.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
Agenda 23 April, 2007 T Service-Oriented Architecture and Software Engineering 1 Service Oriented and Model Driven Architectures Pankaj Saharan.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
1 Modeling Server-side Components with UML Junichi Suzuki, Ph.D. School of Information and Computer Science University.
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
What is MOF? The Meta Object Facility (MOF) specification provides a set of CORBA interfaces that can be used to define and manipulate a set of interoperable.
UDM An Infrastructure for Implementing Domain-Specific Modeling Languages Endre Magyari, Arpad Bakay, Andras Lang, Tamas Paka, Attila Vizhanyo, Aditya.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
XASTRO Metamodel. CCSDS SAWG2 Presentation Outline XASTRO-1 Metamodel XASTRO-2 Metamodel Alignment with Model Driven Architecture.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Model Driven Architecture: An Introduction. Heterogeneity is Permanent Programming languages –~3 million COBOL programmers –~1.6 million VB programmers.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Performance Analysis University College London James Skene –
Model Driven Architecture MDA SE-548 Lale Doğan
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
UML AN OVERVIEW. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
UML Diagrams By Daniel Damaris Novarianto S..
SysML v2 Formalism: Requirements & Benefits
Web Application Modeling
UML Diagrams Jung Woo.
Software Architecture & Design Pattern
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Evaluating Compuware OptimalJ as an MDA tool
UML profiles.
Analysis models and design models
Constructing MDA-based Application Using Rational XDE for .NET
Metadata The metadata contains
Software Architecture & Design
Presentation transcript:

Introduction to MDA (Model Driven Architecture) CYT

2 Outline MDA Overview Support of OMG’s Techniques Model Transformation Building MDA Application Conclusion

3 MDA Overview Several middleware  CORBA  COM/DCOM/MTS  Java/EJB  XML/SOAP  C#/.Net Middleware war MDA is language, vendor and middleware-neutral MDA focuses primarily on the functionality and behavior of a system.

4 MDA Overview (cont’d) An approach to IT system specification that separates the specification of system functionality from the specification of the implementation of that functionality on a particular technology platform “Design once, build it on any platform” A model is a formal specification of the function, structure and/or behaviour of a system The biggest benefit of MDA is the generation of application code from an MDA model through an automated or semi-automated series of steps. Goal: to maximize automation of the mapping step.

5 MDA Overview (cont’d) CIM PIM PSM

6 MDA metamodel MOF Other languages UML Metamodel PIM Mapping techniques PSM Mapping techniques PIM PSM Infrastructure > > 1..n 1..n Refactoring from PSM to PIM > > 1..n 1..n Mapping from PIM to PIM 1..n Mapping from PIM to PSM 1..n Mapping from PSM to PSM 1..n > >

7 Support of OMG ’ s Technique MOF: Meta-Object Facility  Integrated Repository  Standard MetaModel XMI: XML Metadata Interchange  Model & MetaModel Interchange  XML-Based Format, including DTDs UML: Unified Modeling Language UML 1.4  World Standard for A&D  Representation for Structure, Dynamics, Deployment CWM: Common Warehouse Metamodel  Data Warehousing Integration  Record, Table formats; Data Loading & Transformation

8 MOF The MOF defines the dictionary of model elements, as an abstract model called a meta-metamodel This common dictionary enables model exchange from one tool to another The MOF also defines a standard distributed repository A necessary foundation for modeling

9 MOF (cont’d) CLASSES, with Attributes and Operations at both Object and Class level ASSOCIATIONS support binary links between class instances PACKAGES are collections of related Classes and Associations DATATYPES represent non-object types as Parameters or Attributes CONSTRAINTS associate semantic restrictions with other elements

10 XMI OMG-Standardized format for exchange of models (and meta-models) XML-based transport MOF-based schema for compactness without ambiguity Exchange UML models among tools and repository

11 UML Visualizing  Using the standardized graphic UML displays Specifying  Semantics to define  static structure  dynamic behavior  model organization Constructing  Map UML to Programming Environment and Generate some code Automatically Documenting  Every phase of lifecycle from analysis and design through deployment and maintenance

12 CWM OMG’s data warehouse standard Enable easy interchange of  warehouse and business intelligence metadata between  warehouse tools  warehouse platforms and  metadata repositories  in distributed heterogenous environments. Defined using MOF

13 OMG Four Layer Standard Modeling Stack

14

15 Model Transformation Mappings  Mapping is defined as a set of rules and techniques used to modify one model in order to get another model  Mappings are described using UML Refining  Makes a model less abstract  Permits “zooming” in (and out of) a model:

16 PIM to PIM Mapping Used when models are enhanced, refined or filtered during the development lifecycle without needing any platform dependant information

17 PIM to PSM Mapping This transformation is used when the PIM is projected to the execution infrastructure Projection is based on platform characteristics These characteristics should be described using a UML description (and eventually a profile for describing common platform concepts)

18 PSM to PSM Mapping

19 PSM to PIM Refactoring

20 MDA Features

21 MDA brings Consistent Relationships Clear relationship relating different models – Platform independent components to platform specific models – a refinement (“vertical”) mapping – Business model to Platform independent components – a refinement mapping – Business area A to Business area B to model the overlap – a “horizontal” model integration – Interface A to interface B of the same component – a “horizontal” model integration

22 MDA brings Shared Standard Mappings Standardized mappings and patterns for platform-specific model generators – These generic mappings and patterns are defined in shared packages – A specific application uses (perhaps is even generated from) the shared package

23 MDA brings Improved Portability Simpler to re-target platform-independent to different platform targets – Common mappings to different target platforms

24 MDA brings Shared Standard Patterns Common patterns at any level of modeling – The idea of common patterns applies to models of business, components, platforms, mappings

25 MDA Integrates Across Computing Platform Pervasive Services = Common platform-independent model of platform services Leverages shared standard mappings to platform-specific realizations of services

26 Software Development Lifecycle

27 Building an MDA Application Lifecycle UML MOF CWM Time PIM to PIM mappings PIM to PSM mappings (projection on a specific platform) PSM to PSM mappings

28 MDA-based Application Development The process involves three steps:  Step 1: Build a Platform Independent Model (PIM)  Step 2: Map this model into a Platform Specific Model (PSM)  Step 3: Generate Code that can be deployed and run UML Multiple level of PIMs PIM stored in MOF Mapping tools UML(UML profile) platforms tools

29 Platform- Independent Model Start with a Platform- Independent Model (PIM), in UML and defined at multiple levels. Base level PIM represents only business functionality and behavior, undistorted by technology details. Next level adds, e.g., general aspects of components or asynch comms. A Detailed Model, stating Pre- and Post- Conditions in OCL, and Semantics in Action Language Building an MDA Application

30 CORBA Model Platform- Independent Model MDA tool applies an OMG™-standard Mapping – formally, a UML Profile – to generate a Platform- Specific Model (PSM) from the PIM. This model, like the PIM, will be very detailed. This step may require hand-editing, depending on the tool and environment OMG Standard Mappings – UML Profiles – Map a PIM to Middleware Technologies Building an MDA Application (cont’d)

31 CORBA Model Java/EJB Model XML/SOAP Model Other Model Platform- Independent Model OMG will standardize – and MDA tools will implement – mappings to multiple middleware platforms. Each mapping – formally, a UML profile – defines the route from an application’s single PIM to a PSM on a target platform. OMG Standard Mappings – UML Profiles – Map a PIM to Middleware Technologies Building an MDA Application (cont’d)

32 CORBA Model Java/EJB Model XML/SOAP Model Other Model Platform- Independent Model MDA Tools Generate Application Interfaces, Code, and Other Files from each PSM A PSM contains basically the same information as an application, but expressed in UML instead of code. MDA development tools can generate all or most of an application from a PSM: interfaces, templates, configuration files, more. CORBA Impl Java/EJB Impl XML/SOAP Impl Other Impl Building an MDA Application (cont’d)

33 Conclusion Model Model Transformation Auto-Generation Model Driven Architecture Development Methodology  Guidelines  Tools  Transformation rules  UML profile