Metamodelling

A metamodel is most often defined as being a “model of models”. This has to be understood in the way that they are providing a “formalism of modelling” which means that they are describing modeling languages or to be more specific their syntax. To summarize, metamodels define the set of available modeling language constructs that can be used in order to create models. This means that the syntactical elements are enumerated here most often in terms of UML Class Diagrams.

This has the advantage that the metamodels can also be seen as “Open Models” and can therefore also be developed in a cooperative and distributed way. For reasons of completeness it has to be mentioned that metamodels are not able to express all syntactical rules that have to be taken into account when creating a valid model that is conform to the defined modeling language. For example, the requirement that “events” and “functions” in an Event‐Driven Process Chain have to be used in an alternating way is not reflected in the metamodel. Such modeling rules can only be defined with the help of additional formalisms (e.g. constraint languages like the Object Constraint Language (OCL))[1].

This far the semantics of the modeling language constructs is defined in an implicit way. This means that the fact that a language element is called “function” or “event” implies a certain meaning for a human user only that can not be directly processed by computer programs.

DKE Metamodelling Framework

This model shows the composition of existing designations and how we use them.

See also

Definition of Metamodelling at Wikipedia

Further reading

[#1] Object Constraint Language at Wikipedia
1 Attachments 1 Attachments
2019 Views

Average (0 Votes)