The term meta-model is composed of the prefix meta ( in this context, the Greek word for "above" or " next " ), which indicates the measures taken with this model statements at a level higher content provided, and the model concept of (economic ) computer science.
Models are generally based on a somehow geartetes original (see Stachowiak 1973), the specificity of the meta model is that the original of which is an integral part of modeling. However, this stock is not itself a model - the statement that a metamodel is "a model about models " is therefore only indirectly applicable.
The meta- model describes a particular aspect of the creation of conceptual or formal description models. Various aspects of the model can be displayed. The most widespread is the concept of speech-based meta-model, as part of the development of modeling methods and process- based meta-models are specified. Strahringer coined the phrase Metaisierung or the Metaisierungsprinzips for modeling via abstraction levels. The Metaisierungsprinzip specifying, on which aspect ( action or speech) is abstracted ( Strahringer ). The term meta writes thus to a model not an absolute property to, but identifies the relationship of the model to other models.
As an example: Describes a model M1 (immediately ) the language S0, in which a model is formulated M0, then M1 is a (language- based ) meta-model to M0 (indirect model). Further describes a model M2 (immediately ) the language was formulated in the S1 M1, M2 is so according to the metamodel M1, M2 over M0 is, however, meta- metamodel.
Language -based metamodel
A language- based meta-model represents the elements of a modeling language and their relationships in a model - the modeled original is thus a modeling language. It is usually a static model of the conceptual aspect of this language and its abstract syntax.
The voice-based meta-models are, for example, the metamodel of the Unified Modeling Language or the Common Warehouse Metamodel. Both models are specified using the MOF meta- description language from the Object Management Group. For further meta-modeling are also Entity-Relationship models are used (eg in Scheer, within the specification of the ARIS model architecture).
Summing up the concept of the model further and incorporates well as textual representations, for example, can also apply an XML DTD or an XML schema definition as speech-based metamodel, as they for a lot of models (in the form of XML documents ), the defined language. The same can for other formal sign systems (eg programming languages) develop.
A process-based metamodel describes the process of modeling with a particular modeling method - the original is a real-world process (namely, the modeling by a model builder ). So it is specified by an executable model describing which instructions and sequence requirements for the creation of a model (eg the model of a business organization, or a software to be developed ). One speaks in this context of process models.
Examples of such process models can be found for example in ARIS ( see Scheer 1992, there is the process-based metamodel modeled as event-driven process chain) or the Semantic Object Model ( Ferstl / Sinz 2001). The UML lacks a concrete process model - a standardized procedure for the creation of UML models is not part of the UML specification, which is limited to the purely linguistic aspect of the modeling. However, process models such as the Rational Unified Process ( RUP) based on the use of UML as modeling language and can be considered as process-based metamodels to formulated in UML models.
In software engineering is also spoken in this context of methods - the terms are used differently, however. Greiffenberg ( 2003), for example, the method as a composition of language ( language- based meta-model ), and How ( process-based metamodel ) to Holten .. In this composition is referred to as a technique whereby methods can put together in his opinion of various such techniques themselves.
In addition to a voice-based Metaisierung Atkinson and Kuehne propose an abstraction prior to ontological basis. The types are not formed on the representative signs and sign systems, but abstracted in terms of a technical generalization / specialization. However, language -based and Ontology-based Metaisierung are not completely clear-cut, as linguistic signs often also a technical abstraction to reason is (especially in languages that are used to model real-world phenomena ). Especially with domain-specific languages , this aspect plays a central role, since the language-based meta-model is specifically tailored to abstract concepts of the domain and their relationships.
Alvarez looks at the Metaisierung primarily on a technical level and breaks the strict, filmy hierarchy of meta - relationships. In particular, on implementation level by modeling or general system development tools, the different abstract elements are often not separated.
In the simulation technique and the computer simulation is meant by meta-models mostly approximation methods such as Can be splines, regression, and neural networks, as they enable complex simulations " scaled down " to less computationally intensive calculations. The original model is thereby simplified iterative or batch manner using defined calculation rules.
The concept of Metaisierung can potentially infinitely many levels of abstraction, since the modeling language used may be the subject of a new ( meta) model again and again. At higher levels of Metaisierung However, such an abstraction is no longer meaningful. Here use is made of self-referential meta-models. Example of this MOF, which as a meta- description language not only of minor languages such as UML or CWM describes, but also to itself is
Another example would be an ERM, which depicts the relationships between entity types, relationship types, and cardinalities structurally. Self-referential meta-models are language- based as a rule.
Metamodeling in Method Engineering
The creation of meta-models is a central component of Method Engineering in the area of conceptual modeling.