Download presentation
Presentation is loading. Please wait.
Published bySofia Harris Modified over 10 years ago
1
Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva 24.11.02
2
J. Fischer LAB Workshop, Geneva 24.11.02 2 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 24.11.02 3 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 24.11.02 4 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 24.11.02 5 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 24.11.02 6 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 24.11.02 7 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 24.11.02 8 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 24.11.02 9 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 24.11.02 10 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 24.11.02 11 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 24.11.02 12 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 24.11.02 13 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 24.11.02 14 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 24.11.02 15 - 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 24.11.02 16 - 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 24.11.02 17 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 24.11.02 18 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 24.11.02 19 Questions, Statements ???…
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.