Workshop on Integrated Application of Formal Languages, Geneva 2003 1 J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.

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,
Tool support for Distributed Object Technology
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.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
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,
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town.
International Telecommunication Union ITU-T Study Group 17, Moscow, 30 March – 8 April 2005 New Recommendations on ODP Arve Meisingset Rapporteur Q15.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Knowledge Mediation in the WWW based on Labelled DAGs with Attached Constraints Jutta Eusterbrock WebTechnology GmbH.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
Xactium xDSLs Run Models Not Code Tony Clark
DOT’98 Heidelberg 1 A. Hoffmann & M. Born Requirements for Advanced Distribution and Configuration Support GMD FOKUS Andreas Hoffmann & Marc Born
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
Model-Driven Web Feature Service A Way Towards Enhanced Semantic Interoperability Peter Staub, ETH Zurich FOSS4G 2007 – Victoria B.C., September 26, 2007.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
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.
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
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.
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
SaveUML System design. System overview Possible...
Chapter 7 System models.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
A language to describe software texture in abstract design models and implementation.
L10 - April 12, 2006copyright Thomas Pole , all rights reserved 1 Lecture 10: Software Assets and Text: Ch. 8: Language Anatomy and Ch 9: Families.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
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:
Overview of SC 32/WG 2 Standards Projects Supporting Semantics Management Open Forum 2005 on Metadata Registries 14:45 to 15:30 13 April 2005 Larry Fitzwater.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher(2009) with material from Amyot User Requirements Notation (URN)
Metamodeling and Modeling language for Systems Biology SB-UML Magali ROUX-ROUQUIE CNRS, Paris.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Integrated application of eODL 1 J.Fischer Integrated application of eODL Workshop Integrated application of eODL Geneva, 13 September 2003 Harald Böhme,
XASTRO-2 Presentation CCSDS SAWG th November 2004.
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.
Slide no. 1  =====!"§!“!Nova§ ITU-T work on technical languages and general software issues Amardeo Sarma Chairman, ITU-T Study Group 10.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Connecting Architecture Reconstruction Frameworks Ivan Bowman, Michael Godfrey, Ric Holt Software Architecture Group University of Waterloo CoSET ‘99 May.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST Project Review Meeting, 11 th March, WP2: Tools Raphael Volz Universität.
4 th Workshop for TAO and CIAO July 16, 2004 MOF-Compliant Modeling of Middleware Jeff Parsons & Matt Emerson ISIS Vanderbilt University Nashville, TN.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
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.
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.
SysML 2.0 Requirements for Visualization
SysML v2 Formalism: Requirements & Benefits
Web Application Modeling
Abstract descriptions of systems whose requirements are being analysed
Seminar 1 Design of Informatics Systems
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Implementing Language Extensions with Model Transformations
Evaluating Compuware OptimalJ as an MDA tool
Constructing MDA-based Application Using Rational XDE for .NET
OOPSLA Workshop on Domain-Specific Modeling Tools Workgroup
Overview of the ETSI Test Description Language
Implementing Language Extensions with Model Transformations
Software Architecture & Design
Presentation transcript:

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on Integrated Application of Formal Languages Geneva, 13 September 2003 J.Fischer

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer The Problem convenient methods to combine different specification languages in a model-driven software development process Clif: (1) Language integration is only be useful if there is also tool integration (2) Language integration is tool-dependent SDL MSC ASN.1 TTCN URN ODL ULF

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer analysis models design models implementation models deployment models platform models environment models requirement models diversity of modelling techniques: concept space with notation and semantics Model-based Software Development requirements

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer analysis models design models implementation models deployment models platform models environment models requirement models requirements Model-based Software Development Petri nets process B dcl i Natural, c Character; B1 B2 B dcl p Pid ; process B2 B2-1 B2-2 B2-3 B2 SDL...

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Kinds of Language Combinations …in a software development process 1.switch from one development level to another UML  UML  SDL  … requirement rough design detailed design analysis 2.decomposition of a complex system eODL  SDL SDL + ASN.1  UML  existing implementation 3.switch from one abstraction level to another SDL  MSC

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Classic Methods of Language Combinations 1)Integration of languages to a new language 2)Translation between the languages Problems large effort (for each language pair a new mapping) restrictions on expressive power by reducing the languages right mix of concrete notations restrictions on further modifications large effort for adaptation of existing tools

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Models, Notations and Concept Space Concepts theoretical building stones for abstract models of specific problem domain – represented in special notations Concept space –concept collection for a complete model construction with –relations between these concepts and –specific construction rules Abstraction Process –classification, exemplification –generalisation, specialisation –structuring, organisation –capsulation, information hiding –behaviour description

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Original Concept Notation Concept Notation OriginalConcept Notation Meta-Models Original Model (M1) Original (M0) Meta-Model (M2) Meta-Meta-Model (M3) ~ abstract grammar ~ concrete grammar ~ ebnf

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Alternative Approach: Language Integration by Meta-modelling language definition in M2 layer (meta-model) –defines concepts –may be manipulated (Extension, Specialization, Structural adaptation) definition of semantic separated from language notation –no coupling to „grammar technologies“ –suitable (graphical) notation can be selected! –integration of languages with different notations is possible common meta-metamodel is a suitable way for a language integration –relations between meta-models (SDL  UML), –construction of a merged meta-model (language) is possible

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Grammar versus Meta-Model Grammar strict and clear association between semantics and syntactical structures compiler tool support for textual languages (yacc, lex) Meta-Model association diversity of different notations (in particular graphical notations) simple and flexible possibilities for restriction and extension of the concept space creation support of model element repository Combined use Structure of the concept space: abstract grammar or metamodel Relation between concept space and notation: transformation Semantics: defined for an special (example) notation Notation: concrete grammar

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer SDL Language Definition SDL Abstract machine ASM execution Abstract Grammar transformation dynamic semantics static semantics SDL/PR SDL/GR syntax Well-formedness conditions

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer SDL Language Definition (alternative) SDL Abstract machine ASM execution SDL Meta-model transformation dynamic semantics static semantics SDL/PR SDL/GR syntax UML Profile For SDL Well-formedness conditions

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer simple meta-model Meta-Model for SDL: The Method syntax by bnf grammar well- formedness by PC1 target meta-model model fragments meta-data repository Constrains Z100.F2 Open question - What is a good meta-model?

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Language Combination as combination of their concept spaces concepts of language A concepts of language B combined concept space visually reflected by one or more existing notations (partially or complete)  a combination of the concrete notations is not necessary  but important: availability of methods for concept spaces

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Language Combination as combination of their concept spaces The way selection of the common concepts of the languages (common kernel, definition of reference points) estimation of the method to connect the individual concept spaces with the kernel technical Realisation of the concept space (widely independent of available tools)

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Further concepts Further concepts Concept Space Kernel for SDL and MSC Base concepts Concepts Of Language A Concepts Of Language B Notation A Notation B generalisation

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Further concepts Further concepts Concept Space Kernel for Data Types Base concepts Concepts Of Language A Concepts Of Language B Notation A Notation B generalisation Meta-model for data types ASN.1 SDL Data types

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Basic Principles for a Concept Space API necessary for the exchange and combination of models realised as (a set of) –interface definitions (CORBA or Java) –header files (C or C++) 1:1 relation: concepts of the language - interface generalisation/specialisations of concepts: by inheritance of the interfaces all other relations (associations, compositions, …) and attributes: by references over get and set methods

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Normative APIs for Concept Spaces Existing APIs for read, write and model modifications are unfortunately specific to the tool and not to the language: Examples –RoseAPI (RationalRose for UML) –CMCS Client API (Cinderella API for MSC) Price: Tool adaptations for model / tool combination Solution: standardized and tool-independent approach for API Example: MOF (OMG )

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer MOF - Meta Object Facility stored meta-model MOF modelling tool MOF IDL creation, modification … of meta-models meta-model as XML document MOF XMI for meta-model IDL for meta-model framework for specification, construction management, exchange integration of meta-data XMI defines rules to create DTDs for meta-models

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer MOF – as Repository stored models Repository stored models API Modelling tool B read model Modelling tool A write model XMI Version management Repository - is the central information source for all tools - has programmatic and exchange interfaces - the access is standardised, but not implementation

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer MOF – as Repository for Combined Languages stored models Repository A Code Generator stored A model stored models Repository B stored B model executable stored models Repository C stored C model stored models Repository T stored Transformations more than one repository connected by - direct references (common kernel) - separate repository of transformation rules

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer MOF Transformation Framework (MTF) Restriction: structural transformation only > Source Meta-model > Source Model Transform > Transformation Model > Transfomation Meta-model > Target Meta-model > Target Model

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Conclusions Problems with classic combination techniques compilation and language integration (large effort, restrictions on expressive power) Advantage of the meta-model approach two-dimensional description form with free correlation of notations –suitable for languages with graphical notations faster technical realisation –separation from concrete syntax –creation support of model element repositories –support for meta-model transformations Open Issues criteria for good meta-models, efficient techniques for transformations research on pros and cons on meta-model approach combination of different semantics

Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Thank You ! Questions ?