Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Workshop on Integrated Application of Formal Languages, Geneva 2003 1 J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on."— Presentation transcript:

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

2 Workshop on Integrated Application of Formal Languages, Geneva 2003 2 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

3 Workshop on Integrated Application of Formal Languages, Geneva 2003 3 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

4 Workshop on Integrated Application of Formal Languages, Geneva 2003 4 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...

5 Workshop on Integrated Application of Formal Languages, Geneva 2003 5 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

6 Workshop on Integrated Application of Formal Languages, Geneva 2003 6 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

7 Workshop on Integrated Application of Formal Languages, Geneva 2003 7 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

8 Workshop on Integrated Application of Formal Languages, Geneva 2003 8 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

9 Workshop on Integrated Application of Formal Languages, Geneva 2003 9 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

10 Workshop on Integrated Application of Formal Languages, Geneva 2003 10 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

11 Workshop on Integrated Application of Formal Languages, Geneva 2003 11 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

12 Workshop on Integrated Application of Formal Languages, Geneva 2003 12 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

13 Workshop on Integrated Application of Formal Languages, Geneva 2003 13 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?

14 Workshop on Integrated Application of Formal Languages, Geneva 2003 14 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

15 Workshop on Integrated Application of Formal Languages, Geneva 2003 15 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)

16 Workshop on Integrated Application of Formal Languages, Geneva 2003 16 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

17 Workshop on Integrated Application of Formal Languages, Geneva 2003 17 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

18 Workshop on Integrated Application of Formal Languages, Geneva 2003 18 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

19 Workshop on Integrated Application of Formal Languages, Geneva 2003 19 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 )

20 Workshop on Integrated Application of Formal Languages, Geneva 2003 20 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

21 Workshop on Integrated Application of Formal Languages, Geneva 2003 21 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

22 Workshop on Integrated Application of Formal Languages, Geneva 2003 22 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

23 Workshop on Integrated Application of Formal Languages, Geneva 2003 23 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

24 Workshop on Integrated Application of Formal Languages, Geneva 2003 24 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

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


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

Similar presentations


Ads by Google