A novel approach to modeling Zvezdan Protić, Tom Verhoeff, Mark van den Brand.

Slides:



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

Comparison of Several Meta-modeling Tools 2 Yi Lu Computer Science Department McGill University
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
1 SWE Introduction to Software Engineering Lecture 13 – System Modeling.
CS 425/625 Software Engineering System Models
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
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.
A Formal Foundation Supporting MDD --- ZOOM Approach Hongming Liu Lizhang Qin 11/08/2003.
Adaptable Architecture for Meta- Programmable Modeling Tools Matt Emerson Advisor: Janos Sztipanovits The Core Layer The.
Chess Review May 11, 2005 Berkeley, CA Formal Semantics of Metamodeling Frameworks Ethan Jackson ISIS, Vanderbilt University Semantic Anchoring Infrastructure.
Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
1 Relational Algebra and Calculus Yanlei Diao UMass Amherst Feb 1, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
1 Ivano Malavolta, University of L’aquila, Computer Science Department Ivano Malavolta DUALLy: an Eclipse platform for architectural languages interoperability.
1 Relational model concepts Key constraints Referential integrity constraint Steen Jensen, autumn 2013.
Model Transformations
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,
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
Introduction to MDA (Model Driven Architecture) CYT.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
DBSQL 3-1 Copyright © Genetic Computer School 2009 Chapter 3 Relational Database Model.
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.
Copyright © 2009 AtlanMod. All Rights Reserved Frédéric Jouault & Hugo Bruneliere AtlanMod team (INRIA & Mines de Nantes) Possible Benefits of Bridging.
1 Devon M. Simmonds Metadata & The UML Metamodel SLIDES include some from tvarious sources including: (1)
Automaton-Based Approach for Defining Dynamic Semantics of DSLs
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
A language to describe software texture in abstract design models and implementation.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
1 Relational Algebra and Calculas Chapter 4, Part A.
Shravana Kumar Musunuri, Jimmy Mathews Advisors: Dr. Joseph Picone Dr. David Gao Powertrain Design Tools Project The GENERIC MODELING ENVIRONMENT (GME)
Toward a Semantic Anchoring Infrastructure for Domain-Specific Modeling Languages Kai Chen Janos Sztipanovits Sandeep Neema Matthew Emerson Sherif Abdelwahed.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Design Model Lecture p6 T120B pavasario sem.
Graphical Modeling Framework (GMF) Richard C. Gronback Project Lead.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
WIGOS Data model – standards introduction.
Parastoo Mohagheghi 1 A Multi-dimensional Framework for Characterizing Domain Specific Languages Øystein Haugen Parastoo Mohagheghi SINTEF, UiO 21 October.
Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
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.
® IBM Software Group A Metamodeling Approach to Pattern Specification Maged Elaasar 1,2, Dr. Lionel Briand 1, Dr. Yvan Labiche 1 1 Carleton University,
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
Nigel Baker UWE & CERN/EP-CMA Design Patterns for Integrating Product and Process Models The C.R.I.S.T.A.L. Project ( C ooperative R epositories & I nformation.
GME-MOF: The MOF-Based GME Metamodeling Environment Matt Emerson 10/24/2004 Advisor: Dr. Janos Sztipanovits OOPSLA 2004 Domain-Specific Modeling Workshop.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
Automaton-Based Approach for Defining Dynamic Semantics of DSLs Ulyana Tikhonova St. Petersburg State Polytechnical University,
AUTOMATIC GENERATION OF MODEL TRAVERSALS FROM METAMODEL DEFINITIONS Authors: Tomaž Lukman, Marjan Mernik, Zekai Demirezen, Barrett Bryant, Jeff Gray ACM.
November 2001, Slide 1 P.Habela, K.Subieta: Standard Metamodel for Object Databases (2) Standard Metamodel for Object Databases (2): Proposed Improvements.
Department of Mathematics Computer and Information Science1 CS 351: Database Management Systems Christopher I. G. Lanclos Chapter 4.
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
Sheet 1MDAFA2004 Linköping, June 2004 A Language for Model Transformations in the MOF Architecture Ivan Kurtev, Klaas van den Berg University of Twente,
Databases and Database User ch1 Define Database? A database is a collection of related data.1 By data, we mean known facts that can be recorded and that.
SysML 2.0 Formalism Requirements and Potential Language Architectures
 DATAABSTRACTION  INSTANCES& SCHEMAS  DATA MODELS.
Relational Algebra 461 The slides for this text are organized into chapters. This lecture covers relational algebra, from Chapter 4. The relational calculus.
UML Class Diagrams: Basic Concepts
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Chapter 20 Object-Oriented Analysis and Design
OOPSLA Workshop on Domain-Specific Modeling Tools Workgroup
Towards an Open Meta Modeling Environment
DataTypes Nigel Davis
Software Architecture & Design
Presentation transcript:

A novel approach to modeling Zvezdan Protić, Tom Verhoeff, Mark van den Brand

Preliminaries  MDSE  Models  A model is an abstraction of System Under Study (SUS) that can be used for reasoning about that SUS  Metamodels  Syntactic carrier of models  Metametamodels

Popular Metametamodels having “layered” architecture PAGE 3  MOF (UML)  Ecore (Eclipse)  GME (Generic Modeling Environment) metametamodel

Some reasons for a new approach  In traditional modeling approaches a metametamodel is an instance of itself  Thus, conceptually, an > relation can have two interpretations  But those interpretations are not clearly stated for traditional metametamodels  “A metamodel is simply the model of a model, and if that model is itself a metamodel, then the metamodel is in fact a meta-metamodel.[4] Got it? If not, don't worry about it, as it's really just an academic issue anyway.”  EMF Eclipse Modeling Framework (2 nd Edition)  The relationship instantiation problem  E.g. in MOF the instance of an > is a >  But link does not contain attributes of association, e.g. cardinalities, unless it inherits from >, thus an instance of a link cannot be used as a link again

> problem of the layered architecture PAGE 5

Our MetaMetaModel PAGE 6

Example Metamodel PAGE 7 State Transition Label:String From To0..1

Example model (with relations to its metamodel) PAGE 8 AB SM1

Similarities to UML 2.4

Implementing a layered architecture in our approach PAGE 10 MetaMetaModel MetaModel2 Model2 conforms-to instance-of MetaModel3Model3 ModelMetaModel conforms-to Transform (interpret) conforms-to Transform (interpret) instance-of

Why is our approach a plausible approach?  Ethan K. Jackson, and Janos Sztipanovits: Formalizing the Structural Semantics of Domain-specific Modeling Languages, Journal of Software and System Modeling, 2009  An algebraic approach to defining the syntax and structural semantics of domain specific modeling languages (DSML)  A DSLM is a pair of a domain and interpretations.  A domain is specified similar to a language as a tuple of: concepts that can be used to build models (Y), a set of all realizations of models (RY), and a set of constraints over RY  Concepts, are described by using term algebras  Constraints are described by using formulas of a logic  Terms can be transformed into formulas  The validity of a model is checked by making a deductive closure of an union of constraint formulas and term formulas  An interpretation is a transformation from a domain to a domain  Formally, an interpretation is a triple of source domain signature, a target domain signature, and the set of formulas in the same logic as the one used to specify constraints  A metametamodel is just another domain, that has, as concepts, all the concepts that can be used in other domains  This means it is very easy to change the metametamodel  A metamodel is a model of a metametamodel, such that there is an interpretation that can generate a domain based on that metamodel  A metametamodel is meta-circular if it has a realization that when interpreted into a domain, can be interpreted back into the metametamodel domain

Applications  Model comparison  Metamodel and Model co-evolution

Metamodel-independent model comparison  A model comparison is the process of determining differences between two models  Model differences are represented by a another (differences) model that conforms to a differences metamodel  The model repositories are bound to have large number of metamodels that models conform to  Metamodel-dependent model comparison may not suffice

Our approach to model comparison: metamodel of model differences

Metamodel independent metamodel and model co-evolution MM1_v1MM1_v2 M1M1_v2 conforms-to evolution conforms-to co-evolution

A common approach to co-evolution

Why we propose SOT-s  An example operation: Make Reference Composite  What are some possible solutions:  Copy all referenced entities into the new containers?  Move all referenced entities into the new containers?  Assign all entities of the referenced type to containers of the referees?  Or let the user decide which entities should stay in old containers, and which entities should move ?

Metamodel for metamodels PAGE 18

An example metamodel in “natural” and “transformed” representation PAGE 19

Advantages of our approach  All the atomic differences between metamodels are known  Thus, we can create one transformation that co-evolves models  By using SOT, the users that are co-evolving models can easily adapt the transformation to a particular situation

Comments, Questions, Suggestions ?