Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to MDA (Model Driven Architecture) CYT.

Similar presentations


Presentation on theme: "Introduction to MDA (Model Driven Architecture) CYT."— Presentation transcript:

1 Introduction to MDA (Model Driven Architecture) CYT

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

3 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 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 5 MDA Overview (cont’d) CIM PIM PSM

6 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 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 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 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 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 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 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 13 OMG Four Layer Standard Modeling Stack

14 14

15 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 16 PIM to PIM Mapping Used when models are enhanced, refined or filtered during the development lifecycle without needing any platform dependant information

17 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 18 PSM to PSM Mapping

19 19 PSM to PIM Refactoring

20 20 MDA Features

21 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 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 23 MDA brings Improved Portability Simpler to re-target platform-independent to different platform targets – Common mappings to different target platforms

24 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 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 26 Software Development Lifecycle

27 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 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 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 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 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 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 33 Conclusion Model Model Transformation Auto-Generation Model Driven Architecture Development Methodology  Guidelines  Tools  Transformation rules  UML profile


Download ppt "Introduction to MDA (Model Driven Architecture) CYT."

Similar presentations


Ads by Google