Alignment of ATL and QVT © 2006 ATLAS Nantes - 1 - Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France

Slides:



Advertisements
Similar presentations
Major Influences on the Design of ODM Dan Chang (IBM) Elisa Kendall (Sandpiper) MDSW 2004.
Advertisements

Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
June 9, 2006 Transforming models with ATL © 2006 ATLAS Nantes Transforming models with ATL The A TLAS Transformation Language Frédéric Jouault ATLAS.
Automated Test Design ™ © 2011 Conformiq, Inc. CONFORMIQ DESIGNER On ES v1.2.1 Stephan Schulz MBT Working Meeting/MTS#56, Göttingen.
Professor John Hosking, Dean of Engineering and Computer Science Models, Modelling, MBSE.
© 2007 ATLAS Nantes 1 Atlas Model Weaver Use Case: Aspect Oriented Modeling Marcos Didonet Del Fabro Atlas Group (INRIA & LINA), Université de Nantes,
Query/Views/Transformations © 2006 ATLAS Nantes Query/Views/Transformations An introduction to the MOF 2.0 QVT standard with focus on the Operational.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
The Knowledge Industry Survival Strategy (KISS) Tony Clark, Thames Valley University, London, UK Jorn Bettin, Sofismo, Switzerland.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
HAS. Patterns The use of patterns is essentially the reuse of well established good ideas. A pattern is a named well understood good solution to a common.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Sheet 1© 2005 Lentedagen, 30 March-1 April 2005 IPA Lentedagen on Software Architecture Model Transformations in MDA Ivan Kurtev.
Systems Engineering Foundations of Software Systems Integration Peter Denno, Allison Barnard Feeney Manufacturing Engineering Laboratory National Institute.
The information integration wizard (Iwiz) project Report on work in progress Joachim Hammer Presented by Muhammed Al-Muhammed.
MDE In A Sales Management System: A Case Study © 2008 INRIA, TUD & SAP MDE In A Sales Management System: A Case Study Mathias Fritzsche, Hugo Bruneliere,
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,
XML Metadata Interchange (XMI)
Knowledge Discovery: How To Reverse-Engineer Legacy Sytems © 2008 INRIA Knowledge Discovery: How to Reverse-Engineer Legacy Systems Hugo Bruneliere,
Comparing M2T & M2M Complementary Approaches © 2008 INRIA, University of York & SINTEF Comparing M2T & M2M Complementary Approaches Hugo Bruneliere,
1 Ivano Malavolta, University of L’aquila, Computer Science Department Ivano Malavolta DUALLy: an Eclipse platform for architectural languages interoperability.
McGill University Proposal Exam School of Computer Science Ph.D. Candidate in the Modelling, Simulation and Design Lab Eugene Syriani.
Spectra Software Defined Radio Products Applying Model Driven Design, Generative Programming, and Agile Software Techniques to the SDR Domain OOPSLA '05.
Advanced Applications Of Model-to-Model Transformation © 2008 INRIA Advanced Applications Of Model-to-Model Transformation Hugo Bruneliere & Frédéric.
Composing Models: Principles & Techniques © Copyright TUBS & TUD Composing Models: Principles & Techniques Steven Völkel & Jendrik Johannes.
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
A Model-Driven Semantic Web David Frankel (David Frankel Consulting) Pat Hayes ( Institute for Human & Machine Cognition, University of West Florida) Elisa.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
© 2010 HCMUNS. NII-Internship program proposal: Evolution of modeling languages and models Submitted by: BUI TAN LOC NII Supervisor: Professor ZHENJIANG.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
Introduction to MDA (Model Driven Architecture) CYT.
Model Handling with EMF Eclipse ECESIS Project Model handling with EMF An introduction to the Eclipse Modeling Framework ATLAS group (INRIA & LINA),
I T & S A e r o s p a c eD e f e n c e THALES Research & Technology THALES recommendations for the final OMG standard on Query / Views / Transformations.
Copyright © 2009 AtlanMod. All Rights Reserved Frédéric Jouault & Hugo Bruneliere AtlanMod team (INRIA & Mines de Nantes) Possible Benefits of Bridging.
UML Profiles Eclipse ECESIS Project The UML Profile technology SOFTEAM 144 Ave des Champs Elysées Paris, France
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
Usage of OCL April Usage of OCL for design guidelines of models Christian Hein, Fraunhofer FOKUS April 2006.
WP 3.3 © Copyright Xactium, TUBS & TUD How to build a set of DSLs: from Theory to Practise Xactium, TUBS, Jendrik Johannes (TUD)
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
1 A Model-Driven Approach For Information System Migration Raymonde Le Delliou 1, Nicolas Ploquin 2, Mariano Belaunde 3, Reda Bendraou 4, Louis Féraud.
Introduction to Model-Driven Simulation © 2008 SAP, TU Dresden, XJ Technologies Introduction to Model-Driven Simulation Mathias Fritzsche 1, Jendrik.
An ATL Example © 2005 ATLAS Nantes An ATL Example The BibTeXML to DocBook Transformation ATLAS group (INRIA & LINA), University of Nantes, France.
A common meta-model for the interoperation of tools with heterogeneous data models ECMFA 2010 Third Workshop on Model-Driven Tool & Process Integration.
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
AOT Lab Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Unifying MAS Meta-Models ADELFE, Gaia & PASSI Carole Bernon, Massimo.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
Dictionary based interchanges for iSURF -An Interoperability Service Utility for Collaborative Supply Chain Planning across Multiple Domains David Webber.
Introduction To Model-to-Model Transformation © 2008 INRIA Introduction To Model-to-Model Transformation Hugo Bruneliere & Frédéric Jouault INRIA.
An Introduction to Metamodelling Eclipse ECESIS Project An Introduction to Metamodelling Principles & Fundamentals Department of Computer Science,
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Sheet 1 Forum on Specification and Design Languages (FDL), Frankfurt, September 2003 UML to XML-Schema Transformation: a Case Study in Managing Alternative.
Architecture Ecosystem SIG March 2010 Update Jacksonville FL.
9 th Open Forum on Metadata Registries Harmonization of Terminology, Ontology and Metadata 20th – 22nd March, 2006, Kobe Japan. Day: 3 Slot No. P20 Name:Ian.
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
OMG Architecture Ecosystem SIG Enterprise Data World 2011.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Model-Driven Ontology Engineering
Implementing Language Extensions with Model Transformations
Towards Automatic Model Synchronization from Model Transformation
Design of Transmission Pipeline Modelling Language
Introduction.
Semantic Information Modeling for Federation
Ivan Kurtev, Klaas van den Berg Software Engineering Group
Implementing Language Extensions with Model Transformations
Presentation transcript:

Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France

Alignment of ATL and QVT © 2006 ATLAS Nantes Context of this work The present courseware has been elaborated in the context of the MODELWARE European IST FP6 project ( Co-funded by the European Commission, the MODELWARE project involves 19 partners from 8 European countries. MODELWARE aims to improve software productivity by capitalizing on techniques known as Model-Driven Development (MDD). To achieve the goal of large-scale adoption of these MDD techniques, MODELWARE promotes the idea of a collaborative development of courseware dedicated to this domain. The MDD courseware provided here with the status of open source software is produced under the EPL 1.0 license.

Alignment of ATL and QVT © 2006 ATLAS Nantes Prerequisites To be able to understand this lecture, a reader should be familiar with the following concepts, languages, and standards: Model Driven Engineering (MDE) The role of model transformations in MDE QVT ATL MOF

Alignment of ATL and QVT © 2006 ATLAS Nantes Outline Need for ATL and QVT alignment Requirements alignment of ATL and QVT Architectural alignment of ATL and QVT QVT architecture ATL architecture Aligning the architectural components Achieving interoperability between ATL and QVT Conclusions

Alignment of ATL and QVT © 2006 ATLAS Nantes A DSL Perspective on MDE MDE allows definition of small (and large) languages, focused on specific problems known as Domain Specific Languages (DSLs) Typical tasks in MDE also require DSLs: for example, model transformations and language definition A set of transformation languages exists

Alignment of ATL and QVT © 2006 ATLAS Nantes Problems Language fragmentation (Babylon tower) Need for managing DSLs Multiple languages per problem domain Problem domains often overlap Need for choosing among DSLs Need for clear guidelines and knowledge for: Matching the problem domain and the available solutions (DSLs) Explicit comparison among languages to allow selection of the right tool

Alignment of ATL and QVT © 2006 ATLAS Nantes Aligning ATL and QVT Two model transformation languages for MDE Solving the same problem (at first glance) Is that true? Comparing ATL and QVT: At problem domain level: what problems can be solved, what are the requirements per language At architectural level: components and major capabilities

Alignment of ATL and QVT © 2006 ATLAS Nantes What are the problem domains of ATL and QVT? QVT is proposed in the context of OMG MDA approach Targeted at software development ATL requirements evolved towards solving interoperability problems in data engineering May solve software development problems Deals with heterogeneous data Requirements Alignment of ATL and QVT

Alignment of ATL and QVT © 2006 ATLAS Nantes Characteristics of Software Development Transformations are mainly refinement of models; Models are expressed in a limited set of languages (e.g. UML) Languages often share the same conceptual foundation: Object-Oriented Principles Transformations should be semantic preserving Software development is iterative: Change propagation should be supported Separation of concerns: Need for model composition Reverse Engineering Refactoring

Alignment of ATL and QVT © 2006 ATLAS Nantes Heterogeneity of data and schemas (modeling languages): RDBMS; XML; ORDBMS; ER; Many others; Need for data translation between heterogeneous data Need for declarative mappings for schema integration and query answering and translation Data migration (kind of data translation) Characteristics of Data Engineering

Alignment of ATL and QVT © 2006 ATLAS Nantes Requirements for QVT An incomplete list (consult the QVT specification): Operates on MOF models (basically XMI-to-XMI transformations) Supports bidirectional transformations Declarative language (satisfied by Core and Relations languages) Checking the presence of certain relations among models

Alignment of ATL and QVT © 2006 ATLAS Nantes Requirements for ATL Major requirement: ability to deal with various models expressed in different languages and technologies Unification concepts: Everything is a model! Technologies are unified by the concept of Technical Space Heterogeneity is handled by the notion of Technical Projector Data translation between Technical Spaces is regarded as Bridging

Alignment of ATL and QVT © 2006 ATLAS Nantes Requirements alignment for ATL and QVT From the ATL perspective QVT solves transformational problems within the OMG/MDA Technical Space Without the concepts of Technical Projector and Bridging real interoperability problems cannot be solved (misses in QVT) ATL as a part of AMMA supports these concepts

Alignment of ATL and QVT © 2006 ATLAS Nantes Architectural Alignment of ATL and QVT Architecture: set of concepts and relations Alignment for the major components of ATL and QVT; Major goal: Achieving interoperability between ATL and QVT

Alignment of ATL and QVT © 2006 ATLAS Nantes QVT Architecture Contains three DSLs that form layers: Relations (declarative) Core (declarative, simpler than Relations) Operational Mappings (imperative)

Alignment of ATL and QVT © 2006 ATLAS Nantes Conformance Points for QVT Tools Interoperability Dimension Language Dimension Syntax Executable XMI Executable Syntax Exportable XMI Exportable Core Relations Operational Mappings Note that QVT conformance is defined for tools. The term “QVT compliant language” is not defined in the spec.

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL Architecture Three-level architecture:

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL Components AMW (ATLAS Model Weaver): Generic metamodel for establishing links among model elements (metamodel for model weaving) Tool for defining domain specific transformation languages ATL: hybrid transformation language Semantics of AMW extensions may be defined by ATL transformations ATL VM: virtual machine for executing model transformations

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL and QVT Component Alignment (1) Abstractness Category ATLQVT Abstraction Level of Transformation Specification AMW Relations ATL Core, Operational Mappings VM Transformation Scenarios Model synchronization Via a separate transformation Relations, Core Conformance checking Via a separate transformation Relations, Core Model transformationAMW, ATL, VM Relations, Core, Operational Mappings

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL and QVT Alignment (2) Abstractness Category ATLQVT Paradigm DeclarativeAMWRelations, Core HybridATL ImperativeVMOperational Mappings Directionality MultidirectionalAMWRelations, Core UnidirectionalATL, VMOperational Mappings Cardinality M-to-NATL, AMW, VM Operational Mappings, Relations and Core (in checkonly mode) M-to-1 Relations and Core (in enforce mode) Traceability AutomaticATL Relations, Operational Mappings User-specifiedVMCore In-place UpdateATL (in refining mode), VM Relations, Core, Operational Mappings

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL and QVT Interoperability (1) Interoperability: executing programs written in one language with the tools designed for another language. Motivations: Execution and support tools Assume you have a wonderful language without engine and a not so nice language with execution engine; Compliance to standards If QVT programs run on the ATL VM then the ATL VM is QVT conformant!

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL and QVT Interoperability (2) Framework for reasoning about interoperability among ATL and QVT components

Alignment of ATL and QVT © 2006 ATLAS Nantes ATL and QVT Interoperability (3) to from VMOMATLCoreRelations VM N/AReverse engineering OM OM-to-VMN/Aissues ATL ATL compilerATL-to-OMN/A Core Core-to-OMN/A Relations Relations-to- Core N/A

Alignment of ATL and QVT © 2006 ATLAS Nantes Conclusions ATL and QVT have common features but their problem domains are different: QVT is mainly for software development; ATL aims at solving data engineering transformation problems Architectural alignment between ATL and QVT shows that language interoperability is feasible via model transformations ATL tools may be called QVT conformant after the required transformations are provided It is interesting to generalize the framework for reasoning on ATL and QVT to other languages