Presentation is loading. Please wait.

Presentation is loading. Please wait.

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva 24.11.02.

Similar presentations


Presentation on theme: "Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva 24.11.02."— Presentation transcript:

1 Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva

2 J. Fischer LAB Workshop, Geneva Languages... - cover domains, not the universe complex systems need more than one language (SDL, ASN.1,...) for their description, implementation, deployment,... - are driven by user needs (concepts, notations) evolution - need notations graphical notation in favour: state of the art (SDL, TTCN, MSC, URN,...) best suited to cope with complexity (2 dimensional drawing + text) clear representation (better than text) - often share similar concepts (OO concepts, ODP concepts...) - need tools to be used ! - need a community to live and to evolve !

3 J. Fischer LAB Workshop, Geneva Language Definitions... - differ in the level of formality - "traditionally": use grammars concrete grammar for definition of notations abstract grammar for definition of concepts do not share the grammar with other languages - "new" Metamodelling approach: use graphs (labelled nodes and arcs) graphs for definition of concepts assignment of notation elements (informal, formal) differentiation of abstraction levels: model and Metamodel concept of Metamodelling in general is not new but for the definition of languages! Similarities between both?

4 J. Fischer LAB Workshop, Geneva executable parameterised program concrete grammar of a language concept grammar "New" versus "Traditional" "new" Layer Description "traditional" Layer infrastructure for - language definitions - Metamodelling architecture Meta- Metamodel - instance of M3 - language for specification of / programs / models - semantic definition - instance of M2 - language for description of an information domain Model - instance of M1 - real subject of existence Application

5 J. Fischer LAB Workshop, Geneva Metamodel - instance of M3 - language for specification of / programs / models - semantic definition concrete grammar of a language Semantic Concerns "new" "traditional" - M3 implications - wellformedness rules (text,OCL, …) - mapping to languages - ASM, … - grammar - wellformedness rules (text,ASM …) - ASM, … OCL – Object Constraint Language a mix of - Predicate Logic and - set theory in an intuitive syntax

6 J. Fischer LAB Workshop, Geneva InterfaceDef isAbstract : Boolean model a7 : Class name = InterfaceDef... isAbstract : Attribute name = isAbstract multiplicity = ( {1, 1} )... feature type Boolean : PrimitiveType name = Boolean... InterfaceDef isAbstract : Boolean... as metamodel instance a Class name = InterfaceDef an Attribute name = isAbstract multiplicity = 1, 1 feature a PrimitiveType name = Boolean type

7 J. Fischer LAB Workshop, Geneva Characteristics of Metamodelling - language definition in M2 layer (Metamodel) 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 metamodels (SDL UML), construction of a merged Metamodel (language) is possible

8 J. Fischer LAB Workshop, Geneva MOF - Meta Object Facility - OMG standard - base of OMG Model Driven Architecture (MDA) - What is it ? model driven distributed object framework specification construction management exchange integration integrating of Metadata in software systems

9 J. Fischer LAB Workshop, Geneva MOF - Meta Object Facility - OMG standard - base of OMG Model Driven Architecture (MDA) - What is it ? model driven distributed object framework specification construction management exchange integration integrating of Metadata in software systems Concept Space fundamental object oriented terminology classes, associations, inheritance, packages common modelling concepts similar to UML-Core (more restricted) Metameta model

10 J. Fischer LAB Workshop, Geneva MOF - Meta Object Facility - OMG standard - base of OMG Model Driven Architecture (MDA) - What is it ? model driven distributed object framework specification construction management exchange integration integrating of Metadata in software systems MOF Repository as a Tool offers I/f for storing and processing of Metamodels (based on MOF concepts) models (based on those Metamodels) Metameta model CORBA MOF Cl1 Cl2

11 J. Fischer LAB Workshop, Geneva Metameta model MOF - Meta Object Facility - OMG standard - base of OMG Model Driven Architecture (MDA) - What is it ? model driven distributed object framework specification construction management exchange integration integrating of Metadata in software systems XML representation ensures exchange of Metamodels and models, independend from: - syntactical representation - MOF-tool-vendor - ORB vendor CORBA MOF Cl1 Cl2 XML representation of models

12 J. Fischer LAB Workshop, Geneva Metameta model MOF - Meta Object Facility - OMG standard - base of OMG Model Driven Architecture (MDA) - What is it ? model driven distributed object framework specification construction management exchange integration integrating of Metadata in software systems usage of the same Metameta-model as a base for relating Metamodels representing concepts of different languages comes with the result of an integrated language on conceptual level nothing is said about a common notation !!! CORBA MOF Cl1 Cl2 XML representation of models but: MOF does not define the style of notations ! MOF 1.x comes only with textual description of MOF

13 J. Fischer LAB Workshop, Geneva representation of MOF models (Metamodels) choice of notation/ representation of the definition M2 metamodel IDL for model repository API for tools MOF UML and MOF have the same foundation UML is usable as a language for description of Metamodels, i.e. for definition of other(!) modelling languages MODLUML- Profile API (MOF-IDL)XML UML, IDL, EDOC,... eODL, TTCN-3, URN, SDL ??? if UML is used for concrete MOF syntax, UML tools can used for that new language too XML representation of models file/stream

14 J. Fischer LAB Workshop, Geneva Benefits of MOF (1) - MOF repository stores metamodels access via IDL interfaces generic interfaces for inspection and traversal model specific interfaces according to MOF concepts tools can obtain information about the language tools can add information (implemented language subset) same interfaces for all metamodels (languages)! XML representation of models Language concepts IDL for model repository UML API (MOF-IDL) MODL MOF file/stream API for tools XML

15 J. Fischer LAB Workshop, Geneva MOF-to-IDL mapping generates repositories IDL for Metamodel specific repository serve to: store, manipulate, retrieve and exchange models standard API for modelling tools Similar to MOF-IDL same technology for all metamodels (languages)! Benefits of MOF (2) XML representation of models Language concepts IDL for model repository UML API (MOF-IDL) MODL MOF file/stream API for tools XML

16 J. Fischer LAB Workshop, Geneva MOF-XMI provides file/streaming format XML Metadata lnterchange XMI defines a DTD for MOF Metamodels can be exchanged as XML file/stream XMI defines rules to create DTDs for Metamodels Model can be exchanged as XML file/stream (e.g. UML XMI) common interchange format for all Metamodels! Benefits of MOF (3) XML representation of models Language concepts IDL for model repository UML API (MOF-IDL) MODL MOF file/stream API for tools XML

17 J. Fischer LAB Workshop, Geneva MOF based Metamodels for all languages standardized methodology and tool interfaces for language development Creation, Extension,... merge of Metamodels possible Language integration (as UML is an integration of...) definition of arbitrary notations ruled by the zeitgeist Vision of an MOF-based Integration of ITU languages

18 J. Fischer LAB Workshop, Geneva common kernal real-time engine Can standards allow common tools for UML, SDL, ASN.1, MSC, … with backward compatibility ? SDL 2000 kernel UML 2.0 restricted SDL restricted SDL 20xxUML 2.x, 3.x MOF 2.0 UML 2.0 our visionary technology approach

19 J. Fischer LAB Workshop, Geneva Questions, Statements ???…


Download ppt "Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva 24.11.02."

Similar presentations


Ads by Google