30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces1 Graph Transformation for Model Transformation Arend Rensink University of Twente.

Slides:



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

© Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn 2.5 Graph Grammars.
Visual Model-based Software Development EUD-Net Workshop, Pisa, Italy September 23 rd, 2002 University of Paderborn Gregor Engels, Stefan Sauer University.
Verification of DSMLs Using Graph Transformation: A Case Study with Alloy Zekai Demirezen 1, Marjan Mernik 1,2, Jeff Gray 1, Barrett Bryant 1 1 Department.
Eugene Syriani and Huseyin Ergin University of Alabama Software Modeling Lab Software Engineering Group Department of Computer Science College of Engineering.
Semantics Static semantics Dynamic semantics attribute grammars
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Budapest University of Technology and EconomicsDagstuhl 2004 Department of Measurement and Information Systems 1 Towards Automated Formal Verification.
Database Systems: Design, Implementation, and Management Tenth Edition
Hüseyin Ergin University of Alabama Software Modeling Lab Software Engineering Group Department of Computer Science College of Engineering.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Model checking dynamic states in GROOVE Arend Rensink Formal Methods and Tools University of Twente.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
Object-Oriented Theories for Model Driven Architecture Tony Clark, King’s College, UK. Andy Evans, University of York, UK. Robert France, Colorado University,
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
Sheet 1© 2005 Lentedagen, 30 March-1 April 2005 IPA Lentedagen on Software Architecture Model Transformations in MDA Ivan Kurtev.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Presenter : g9102 黃培智 Outline  Motivation and Background  GXL Overview  Exchange Graphs  Exchange Graph Schemas  Conclusion.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Comparing M2T & M2M Complementary Approaches © 2008 INRIA, University of York & SINTEF Comparing M2T & M2M Complementary Approaches Hugo Bruneliere,
Behaviour-Preserving Model Transformation Arend Rensink, University of Twente IPA Spring Days, 18 April 2012.
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
Model Transformations
Ontology Development Kenneth Baclawski Northeastern University Harvard Medical School.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
AToM 3 : A Tool for Multi- Formalism and Meta-Modelling Juan de Lara (1,2) Hans Vangheluwe (2) (1) ETS Informática Universidad Autónoma de Madrid Madrid,
Introduction to MDA (Model Driven Architecture) CYT.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
On the Representation of Intangible Objects such as Software in a Measurement Context Miguel Lopez Valérie Paulus Grégory Seront Simon Alexandre.
1 On to Object Design Chapter 14 Applying UML and Patterns.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Class Diagrams with Constraints Philippe Nguyen McGill University COMP-762 Winter 2005.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Introduction to Graph Grammars Fulvio D’Antonio LEKS, IASI-CNR Rome,
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
A language to describe software texture in abstract design models and implementation.
1 Graph-Based State Spaces Arend Rensink, University of Twente CamPaM 2012 April 2012Graph-Based State Spaces.
Hybrid Transformation Modeling Integrating a Declarative with an Imperative Model Transformation Language Pieter Van Gorp
4 March 2005, NVTI day, UtrechtGraph-Based State Spaces1 Arend Rensink University of Twente.
I-Neighbourhood Abstraction in Graph Transformation Arend Rensink University of Twente Based on work with: Jörg Bauer, Iovka Boneva, Dino Distefano, Marcus.
 What is Modeling What is Modeling  Why do we Model Why do we Model  Models in OMT Models in OMT  Principles of Modeling Principles of Modeling 
Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto.
Ontology-Based Computing Kenneth Baclawski Northeastern University and Jarg.
Sheet 1 DocEng’03, Grenoble, November 2003 Model Driven Architecture based XML Processing Ivan Kurtev, Klaas van den Berg University of Twente, the Netherlands.
Semantics Preserving Transformation: An Impossible Dream? Arend Rensink, University of Twente BX Position Statement.
Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu.
Chapter 3 Part II Describing Syntax and Semantics.
What can BX make from Sense? Arend Rensink, University of Twente Banff, December 2013.
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.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
ModTransf A Simple Model to Model Transformation Engine Cédric Dumoulin.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
The Dagstuhl Middle Model: An Overview Timothy C. Lethbridge SITE, University. of Ottawa
Sheet 1 Forum on Specification and Design Languages (FDL), Frankfurt, September 2003 UML to XML-Schema Transformation: a Case Study in Managing Alternative.
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
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.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Graph-Based Operational Semantics
Scenario Integration via Higher-Order Graphs *)
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Implementing Language Extensions with Model Transformations
Introduction.
Ivan Kurtev, Klaas van den Berg Software Engineering Group
Model-Driven Semantic Web Rule Engineering
Introduction to Graph Transformation
Implementing Language Extensions with Model Transformations
Software Architecture & Design
Presentation transcript:

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces1 Graph Transformation for Model Transformation Arend Rensink University of Twente

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces2 Overview Scenario Outline of the presentation – Requirements – Principles – Example – Practice – Next step – Final words A-ModelA-B TrafoB-Model Language AA-B Trafo DefTrafo Def LanguageLanguage B

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces3 Requirements: What do we need? Reasoning about models – Instances of different meta-models – Need common representation Idea: graphs as common representation – Powerful yet simple – Natural for many models – Theory of graph transformation available Some aspects not covered well – Cardinality and inheritance in meta-models – Ordered associations – Attributes

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces4 Example: ASG to FG Abstract Syntax Graph model Statement next AssignIfWhile bodyelsethen 0..11

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces5 Example: ASG instance Program ready = false; while (! ready) { if (x < max) { x = x*x; ready = true; } else { ready = false; } } Graph Assign While If Assign next body then next else

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces6 Target model: Flow Graphs Element flow 12 ProcedureStop flow Predicate nondeterministic choice

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces7 Example: FG instance ASG Assign While If Assign next body then next else FG Proc Pred Proc flow Stop flow

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces8 Trafo Def: set of rules start assign if-else stop if-no-elsewhile

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces9 Graph formalism Graphs in this presentation: – flat (i.e., not hierarchical), untyped – directed, edge-labelled, no parallel edges – self-edges depicted as node labels Formally: G = (L,N,E) with – L set of labels – N finite set of nodes – E  N  L  N finite set of labelled edges Partial morphisms – structure-preserving node mappings

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces10 forbidden Graph Productions Production rule source graph matching Concrete transformation src(t)tgt(t) morph(t) target graph pushout NAC NACs (SPO = Single Pushout Approach) LHSRHS rule morphism (partial)

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces11 Example production rule Alternative single-graph representation blue = eraser: LHS, not RHS; to be matched and deleted green = creator: RHS, not LHS; to be added black = reader: LHS and RHS; to be matched and preserved red = embargo: NAC, not LHS; forbidden

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces12 B-Model Lang B Application scenario Overhead: Transformation to and from graphs – Price for common representation Graph transformations inefficient – Graph matching inherently complex (NP-complete) – Domain-specific transformations superior – Graph Trafo can serve as specification A-B Trafo A-B Prod Syst Graph Production Systems A-Graph A-Type A-Model Lang A B-Graph B-Type should be reversible

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces13 Graphs everywhere Other modelling domains (meta-models) – XSD/XML – ERD schemas/databases – Class/object diagrams Certain patterns emerge – Commonalities among modelling domains – Should be formulated on MOF level

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces14 Practice: What is available? BOTL (München) – Bidirectional O-o Transformation Language – Transforms object models to object models FuJaBA (Paderborn, Kassel) – From UML to Java and Back Again – Generates Java code from enriched activity diagrams ATOM3 (Madrid) – A Tool for Multi-Formalism Meta-Modelling – Transforms any model at any meta-level

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces15 Next step: Dynamic Semantics Current research mostly on static semantics – Models: Class diagrams, ERD schemes, XML schemas – Instances: Objects, ER databases, XML documents Dynamic semantics: how do systems behave? – Can be expressed as changes on instance level – These can also be seen as transformations – Graph transformations for operational semantics – Aim: Semantics-preserving model transformations NWO project: GRASLAND – Graphs for Software Language Definition – Aim: Generic semantic definition language

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces16 TAAL Experiment [Kleppe, Rensink, Kastenberg] Example O-O language Transformations dynamic semantics ASG to FG meta- level shift GROOVE

30 March 2005, IPA lentedagen, BredaGraph-Based State Spaces17 Final words MDA: Cool idea – Good intuitions – Poor mathematical backing Graph transformation: Promising approach – Good mathematical backing – Useful for formalizing principles – Questionable for practical transformations State of the art – A lot of work at the stage of (small) case studies – We need engineering discipline (Who’s going to write the XSD meta-model in MOF?)