Multilevel Behavioural Metamodelling Fernando Mac´ ıas Adrian Rutle Volker Stolz November 2, 2016 Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Why Modelling? Happy zone of What software What understanding computers engineers understand understand Domain Specific Formal Technical Modelling Language Language Language (DSML) What domain experts understand Domain Natural Language Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
MOF-based approaches Pros � High reliability � Mature (meta)modelling ecosystems � Good tool coverage Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
MOF-based approaches Pros � High reliability � Mature (meta)modelling ecosystems � Good tool coverage Cons × Mixed abstraction levels × Synthetic typing relation × Convoluted Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with two-level approach Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with two-level approach Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Multilevel approaches Pros � Unbounded number of levels � Deep hierarchies (potency) � Linguistic extensions Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Multilevel approaches Pros � Unbounded number of levels � Deep hierarchies (potency) � Linguistic extensions Cons × Lack of clear consensus on the foundations × No common focus in current multilevel tools × Technology lock-in Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Multilevel approaches Pros � Unbounded number of levels � Deep hierarchies (potency) � Linguistic extensions “There is still no clear Cons consensus on what the × Lack of clear consensus on paradigm actually entails and the foundations how it should be applied” × No common focus in current multilevel tools MULTI 2016 CfP × Technology lock-in Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Multilevel approaches Pros � Unbounded number of levels � Deep hierarchies (potency) � Linguistic extensions “There is still no clear Cons consensus on what the × Lack of clear consensus on paradigm actually entails and the foundations how it should be applied” × No common focus in current multilevel tools MULTI 2016 CfP × Technology lock-in Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach 1-1 1-1 1-1 EClass EClass EClass EReference contains@1-2 out@1-2 Machine Container Part EReference EReference in@1-2 creates@1-1 EReference Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach 1-1 1-1 1-1 Machine Machine Container GenHandle GenHead Conveyor creates creates@1-1 creates cout@1-1 EReference@2 creates@1-1 Part 1-1 Part 1-1 Container 1-1 Handle Head Tray has@1-1 EReference@2 has@1-1 EReference@2 1-1 1-1 Part Machine Hammer Assembler Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach Tray 1-1 1-1 1-1 1-1 GenHead Conveyor cout@1-1 Tray out@1-1 t2 ghead c1 cout t1 out@2 cout in@1-1 in@2 cout@1-1 cout cout@1-1 1-1 1-1 1-1 1-1 GenHandle Conveyor Assembler Conveyor out@2 out@1-1 ghandle c2 assembler c3 out@2 out@1-1 Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach (a) generic_plant EClass 1-1 EClass 1-1 EClass 1-1 EReference contains@1-2 out@1-2 Machine Container Part EReference EReference in@1-2 creates@1-1 EReference (b) hammer_plant Machine 1-1 Machine 1-1 Container 1-1 GenHandle GenHead Conveyor creates creates@1-1 creates cout@1-1 EReference@2 creates@1-1 Part 1-1 Part 1-1 Container 1-1 Handle Head Tray has@1-1 EReference@2 has@1-1 EReference@2 Part 1-1 Machine 1-1 1..1 1..1 Hammer Assembler (d) hammer_config_1 Tray 1-1 GenHead 1-1 Conveyor 1-1 cout@1-1 Tray 1-1 out@1-1 t2 ghead c1 cout t1 out@2 cout@1-1 cout in@1-1 in@2 cout@1-1 cout GenHandle 1-1 Conveyor 1-1 Assembler 1-1 Conveyor 1-1 out@2 out@1-1 ghandle c2 assembler c3 out@2 out@1-1 Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach 1-1 1-1 1-1 Machine Machine Machine GenLeg GenSeat Gluer creates creates@1-1 creates@1-1 creates 1-1 1-1 1-1 Part Part Container Leg Seat Box has@1-1 EReference@2 has@1-1 EReference@2 Part 1-1 Stool Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach 1-1 1-1 1-1 GenLeg Box Gluer in@1-1 out@1-1 gleg b1 in@2 gluer out@2 out@1-1 out@2 in@1-1 in@2 1-1 GenSeat 1-1 1-1 Box Box out@1-1 gseat b2 b3 out@2 Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
PLS example with multilevel approach (a) generic_plant EClass 1-1 EClass 1-1 EClass 1-1 EReference contains@1-2 out@1-2 Machine Container Part EReference EReference in@1-2 creates@1-1 EReference (b) hammer_plant (c) stool_plant Machine 1-1 Machine 1-1 Machine 1-1 Machine 1-1 Machine 1-1 Container 1-1 GenLeg GenSeat Gluer GenHandle GenHead Conveyor creates creates@1-1 creates cout@1-1 creates creates@1-1 creates@1-1 creates EReference@2 creates@1-1 1-1 1-1 1-1 Part Part Container Leg Seat Box Part 1-1 Part 1-1 Container 1-1 Handle Head Tray has@1-1 EReference@2 has@1-1 EReference@2 has@1-1 EReference@2 has@1-1 EReference@2 Part 1-1 Machine 1-1 Part 1-1 1..1 1..1 3..3 1..1 Hammer Assembler Stool (d) hammer_config_1 (e) stool_config_1 Tray 1-1 GenHead 1-1 Conveyor 1-1 cout@1-1 Tray 1-1 out@1-1 t2 GenLeg 1-1 Box 1-1 Gluer 1-1 ghead c1 cout t1 in@1-1 out@2 out@1-1 gleg b1 in@2 gluer out@2 cout@1-1 cout in@1-1 in@2 cout@1-1 cout out@1-1 out@2 in@1-1 in@2 GenHandle 1-1 Conveyor 1-1 Assembler 1-1 Conveyor 1-1 1-1 GenSeat Box 1-1 Box 1-1 out@2 out@1-1 out@1-1 ghandle c2 assembler c3 gseat b2 b3 out@2 out@1-1 out@2 Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Common realization of MLM: Clabject Adapted from: Melanee Project – https://melanee2.informatik.uni-mannheim.de/confluence/ Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Common realization of MLM: Clabject Adapted from: Melanee Project – https://melanee2.informatik.uni-mannheim.de/confluence/ Issues × Requires a linguistic metamodel × Every element needs a linguistic type × Synthetic typing and flattening of the ontological stack × Custom tools and representations Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Our realization of MLM: MultEcore Ontological stack Does not require M0 linguistic metamodels, synthetic (fixed) ontologically typed typing relations or flattening LM 1 M1 Linguistic metamodels Multiple and ontologically typed linguistically ... independent metamodels typed ontologically typed orthogonal to the ontological stack Mn-1 LM 2 ontologically typed Linguistic typing Less strict. An Mn (instance) element may have none, one or several linguistic types Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Our realization of MLM: MultEcore Ontological stack Does not require M0 linguistic metamodels, synthetic (fixed) ontologically typed typing relations or flattening LM 1 M1 Linguistic metamodels Multiple and ontologically typed linguistically ... independent metamodels typed ontologically typed orthogonal to the ontological stack Mn-1 LM 2 ontologically typed Linguistic typing Less strict. An Mn (instance) element may have none, one or several linguistic types Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Our realization of MLM: MultEcore Ontological stack Does not require M0 linguistic metamodels, synthetic (fixed) ontologically typed typing relations or flattening LM 1 M1 Linguistic metamodels Multiple and ontologically typed linguistically ... independent metamodels typed ontologically typed orthogonal to the ontological stack Mn-1 LM 2 ontologically typed Linguistic typing Less strict. An Mn (instance) element may have none, one or several linguistic types Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Our realization of MLM: MultEcore Ontological stack Does not require M0 linguistic metamodels, synthetic (fixed) ontologically typed typing relations or flattening LM 1 M1 Linguistic metamodels Multiple and ontologically typed linguistically ... independent metamodels typed ontologically typed orthogonal to the ontological stack Mn-1 LM 2 ontologically typed Linguistic typing Less strict. An Mn (instance) element may have none, one or several linguistic types Fernando Mac´ ıas , Adrian Rutle, Volker Stolz Multilevel Behavioural Metamodelling
Recommend
More recommend