MDA and QVT  Tom Gullion, Director of Product Management, Together Products.

Slides:



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

Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
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.
Production Rule Representation Team Response Presentation to BEIDTF OMG Montreal Aug 2004 Ruleml.org.
Modeling with the ECCF SS ● UML Profile for ECCF ● UML Redefinition Semantics ● Compliance ● Consistency ● Conformance ● Validation ● Transformation ●
1 Model-driven development of SOA with Web services – using QVT technology Master thesis by Berge Stillingen Department of Informatics, University of Oslo.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
OMG‘s MDA: An Overview copyright © 2001, MATHEMA AG OMG‘s MDA: An Overview OMG‘s MDA: An Overview Markus Völter
MDA and QVT in Together Architect 2006  Pavel Kobiakov, Borland Software Corporation  06 December 2005.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Integrated Development Environments. Today We Will: Go over more advanced functionality of Eclipse. Break up into teams to work on presentation and final.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
® IBM Software Group © 2008 IBM Corporation RSM and UML 13 june 2008 Fredrik Ferm – ECAT Strategy Team Lead
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
IBM Software Group © 2005 IBM Corporation University of Nantes Eclipse dayMarch 2005 The Eclipse Modeling Framework and the IBM Model Transformation Framework.
The Role of Modeling in Systems Integration and Business Process Analysis © Sparx Systems Pty Ltd 2011 Ben Constable Sparx Systems.
LUCENTIA Research Group Department of Software and Computing Systems Using i* modeling for the multidimensional design of data warehouses Jose-Norberto.
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
NIEM-UML Profile Justin Stekervetz, NIEM PMO
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
An Approach and Tool for Synchronous Refactoring of UML Diagrams and Models Using Model-to-Model Transformations Hafsteinn Þór Einarsson Helmut Neukirchen.
Model Transformations
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.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
© 2007 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Eclipse SOA Tools Platform Project Eric Newcomer IONA Technologies.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
Tools for Diagrammatic Specifications Stian Skjerveggen Supervisors: Yngve Lamo, Adrian Rutle, Uwe Egbert Wolter.
Agenda 1. Introduction 2. Overview of SU-MoVal 3. OCL-based Model Validation 4. QVT-based Transformations 5. Demo of SU-MoVal 6. Conclusion and Future.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
NIEM-UML PROFILE Justin Stekervetz, NIEM PMO Cory Casanave, Model Driven Solutions Mark Kindl, Georgia Tech Research Institute March 2012 OMG Meeting.
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
1 OCL Tools Supervised by Prof. Daniel Amyot May Khalil Nadia Spido Submitted to Professor Daniel Amyot in partial fulfillment of the requirements for.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Web Engineering Web Application Modeling Dr. Mohammad Ahmad.
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:
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
The Unified Modeling Language (UML)
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Extensible Modeling and Simulation Framework Extensible 3D Graphics (X3D) Don Brutzman MOVES Institute, Naval Postgraduate School Andreas Tolk VMASC, Old.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect, V7.5 Module 18: Applying Patterns and Transformations.
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.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
A Flexible MDATool Set Anneke Kleppe Klasse Objecten.
Model Driven Performance Analysis University College London James Skene –
Model Driven Architecture MDA SE-548 Lale Doğan
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.
Healthcare-oriented Modeling Environment ( HoME ) Managed jointly by: Veterans Health Administration (VHA) IBM modeling-mdt.projects.openhealthtools.org.
Object Management Group Information Management Metamodel
Web Application Modeling
Towards Automatic Model Synchronization from Model Transformation
Evaluating Compuware OptimalJ as an MDA tool
The Tropos visual modeling language A meta-model.
Constructing MDA-based Application Using Rational XDE for .NET
Execute your Processes
QVT Operational 1.0 Ganymede Simultaneous Release Graduation Review
QVT Operational 1.0 Mini-deck
Model Driven Software Development
Software Architecture & Design
Presentation transcript:

MDA and QVT  Tom Gullion, Director of Product Management, Together Products

Agenda  MDA Overview  QVT Overview  QVT By Example  QVT Demos  Developing QVT  Summary

MDA Overview

 According to the Object Management Group (OMG):  MDA provides an open, vendor-neutral approach to the challenge of business and technology change.  MDA aims to separate business or application logic from underlying platform technology.  Platform-independent models can enable intellectual property to move away from technology-specific code, helping to insulate business applications from technology evolution, and further enable interoperability. What is MDA?

 MDA is not a single specification, but a collection of related OMG specifications:  Unified Modeling Language (UML™) 2.0  Infrastructure  Superstructure  Object Constraint Language (OCL)  Diagram Interchange  Profiles  Meta-Object Facility (MOF)  XML Meta-Data Interchange (XMI)  Common Warehouse Meta-model (CWM)  Query View Transformation (QVT) What Comprises MDA?

Transformations  This is the challenge for MDA!  Inspired by existing CWM transformation technology  MOF2 Core will align basis of UML and CWM  Query / View / Transformation (QVT) is the answer A record of transformation is required to maintain traceability and synchronization.

Model Marking Transformation  Marks are specific to a transformation  Can be a stereotype in a profile, for example

Machine Code Impossible? The Abstraction Gap  Middleware makes MDA a potential reality Level of Abstraction Generators Machine Code with Operating System Impractical? 3GL with Operating System Unlikely? 3GL with Middleware Practical(ly) Middleware with Framework Today! A b s t r a c t i o n G a p

QVT Overview

Query-View-Transformation  QVT specification is the heart of Model Driven Architecture  Queries take a model as input and select specific elements from that model  Views are models that are derived from other models  Transformations take a model as input and update it or create a new model

Example Transformation

UML to RDB Example  UML Class model  Relational Data Model Model Query View transformation

Key Benefits of QVT  Core benefit of MDA  Smaller, manageable models operating in concert versus huge, monolithic models  Models become “usable” development artifact  avoid intermediate work products  Enables intelligent code generation  Insulate models and applications from deployment platform technology  reuse made into reality

QVT in context  QVT might be used to:  Transform  business process model  object model (PIM to PIM)  Analysis object model into Business Object model (PIM to PIM)  Object model to data model (PIM to PIM or PIM to PSM)  Object model to detailed object model (PIM to PSM)

Applicable Benefits  Intermediate work products vanish due to clear value of all models  Repeatable, high-quality approach to software design/development  Automated traceability between models, queries, transformations and views

Transformations  QVT provides language to implement model-to-model transformations  QVT fully supports OCL 2.0 expressions  Query libraries Reusable libraries of QVT mappings Traceability Automated traceability when executing mapping Extensible QVT can call custom Java methods

QVT Language Overview  Together® Architect 2006 implementation based on the revised submission for MOF 2.0 Query/View/Transformation RFP (OMG document ad/ )  Supports operational transformations  Two types of transformation methods: Mappings and Queries

QVT by Example  A few example QVTs

Transforming a Use Case Model to a Class Model  This transformation automates the construction of a set of use case realization classes  It is rather simple: a 1-to-1 mapping from Actor to Class. Use Cases owned by the Actor are created as Operations within the Class.

Transforming a PIM to a PSM  As a basic step toward elaborating the PSM, this QVT simply adds scaffolding code (e.g., getters and setters)

QVT Demos  A few examples

QVT example #1: PIM to PSM  PIM: Three classes and a few attributes…  QVT: AddScaffoldingCode  Simply add getter and setter methods

AddScaffoldingCode.qvt Required Impl

Control Flow in AddScaffoldingCode.qvt  main (not surprisingly) starts it off  mapping methods do most of the work

Applying QVT transformations – 1of 4  Select input model  Choose menu option

Applying QVT Transformations – 2 of 4  Select QVT to use  Select target model  Optionally create trace file

Applying QVT Transformations – 3 of 4  Transformation result – note added getter/setter methods

Applying QVT Transformations – 4 of 4  Trace file view

Developing QVT  Walking through the dev features

QVT Editor, Model Navigator, Metamodel Browser Code Completion MetaModel Browser Project Metamodels and PrimitiveTypes Syntax Highlighting Error Annotations

QVT Debugger  Create Debug or Run configuration  QVT Debugger  Debug Perspective  Synchronized Debug, Code and Outline views  Breakpoints  Variables, Watches

Testing a compiled transformation – 1 of 2  Run project – Run As…., Eclipse Application  Starts a runtime workspace with the compiled transformation included  Create a new source and target project for testing  Do Model  Apply Transformation  QVT  Compiled

Testing a compiled transformation – 2 of 2  Select transformation  Select target model

UC2Class QVT  Use Case to Class QVT  See included project

PIM 2 PSM Using Library QVT  Extend Add Scaffolding QVT  Reusable QVT library example  See included project

Applying QVT to submodels  User-selectable scope

Avoiding unnecessary parsing…  The QVT draft spec only defines complete models as input  but this demands unnecessary parsing in many cases  generating XSD for a single class diagram  transformations of a use case model  transformations of a partition (package tree) of a model  fortunately, the Together group solved this problem and we’re getting this added to the QVT specification

BPMN to UML example  Note we selected the Process Pool element  then we can Model  Apply Transformation  QVT …  choose a Together UML20 project as the target

BpmnToUml.qvt

QVT Summary

QVT in Together 2006 Summary  provides language to implement model-to-model transformations  implementation based on the revised submission for MOF 2.0 Query/View/Transformation RFP (OMG document ad/ )  fully supports OCL 2.0 expressions  query libraries  Reusable libraries of QVT mappings  Traceability  Automated traceability when executing mapping  Extensible  QVT can call custom Java methods

References  QVT Language Reference, Together Architect 2006 online help  revised submission for MOF 2.0 Query/View/Transformation RFP (OMG document ad/ )  The Object Constraint Language, 2ed Jos Warmer and Anneke Kleppe