• No results found

1.4 Outline

2.1.2 Modeling Methods

Having defined the concepts of models and modeling, the following section uses those concepts and expands them to the definition of a modeling method. Again, two approaches to define the constituents of modeling methods are presented and discussed afterwards. However, before the constituents of modeling methods are discussed in detail, a short look at a definition of an information systems method may be given: “a coherent collection of concepts, beliefs, values and principles supported by resources to help a problem-solving group to perceive, generate, assess and carry out in a non-random way changes to the information situation“ (LYYTINEN, 1987; AVISON ANDWOOD-HARPER, 1990). This general definition already takes into account the important mapping between a certain problem domain and specifically designed methods, aiming to be suitable for that problem domain. There is no such thing as a modeling method that is generally applicable in any domain. Standards like the Business Process Model and Notation (BPMN) (OBJECTMANAGEMENT GROUP (OMG), 2011a) for business process modeling or the Unified Modeling Language (UML) (OBJECTMANAGEMENTGROUP (OMG), 2011d) for software systems modeling lack expressiveness when it comes to mapping the specifics of a certain domain. Hence, the modeling method must be chosen in accordance to the investigated domain and the information needs of the model users that should be met. In order to decide between the rich set of available modeling methods, it is important to compare the methods on a conceptual basis. The usage of the subsequently introduced approaches yields a comprehensive description of modeling methods and therefore fosters comparison of them.

Modelling Procedure

Modelling Method

Modelling

Technique Mechanisms& Algorithms

Modelling

Language Model Meta

Modeling Method

Modeling

Approach ProcessModel

Metaphor

Mechanisms & AlgorithmsArchitecture Model

Figure 7: Components of modeling methods according to Ferstl and Sinz

According to Ferstl and Sinz (FERSTL ANDSINZ, 2008, p. 130f.), constituents of a Modeling Approach are a Metaphor and a Meta Model (cf. Figure 7). Modeling approaches can be extended to the definition of a Modeling Method by incorporating an Architecture Model and a Process Model(BORK AND SINZ, 2013). These constituents of a modeling method are now introduced in more detail:

• Metaphor

A metaphor, in the common understanding, is a figure of speech, used as an analogy to describe a certain situation or object by referring to a generally known but normally not related situation or object, e.g., something is described as being “crystal clear“. In the context of modeling, a metaphor defines the general way of perceiving the real world and delimiting the part of the real world that should be considered within the model. The metaphor also defines the way of building this part of the real world by means of a conceptual model.

• Meta Model

A central aspect of a modeling method is the modeling language (i.e., objects and rela- tions with attributes). The elements of a modeling language that can be used to create valid models are formally specified in a meta model. The meta model also constrains the relations between the language’s elements. Using the metaphor, meta models can be described as the general construction plan of all model instances that can be created using the modeling method. According to (FERSTL AND SINZ, 2008, p. 131), a meta model also defines the semantics (i.e., the meaning) of all elements. The semantics of the el- ements, and therefore the semantics of the modeling language, has to be aligned to the metaphor of the modeling language.

• Architecture Model

The architecture model structures the model by defining model layers, sub-models, view- points, and perspectives, therefore breaking down the complexity of both, the model as a whole and the task of creating valid models. Consequently, architecture models are vital for the specification of large models, e.g., enterprise models and enterprise architectures. • Process Model

The process model is used to describe the steps to be performed by the modeler in order to build valid models. The aspects defined in the architecture model serve as an input for the process model, which uses this input to define a sequence of modeling steps, e.g., fist create model A, transform model A into model B, then refine model B. Hence, the process model guides the modeler during the application of a modeling method.

A different framework to describe modeling methods comprehensively has been introduced by KARAGIANNIS AND K ¨UHN(2002). Figure 8 illustrates the components of modeling meth- ods and their relationships. By a first characterization, a modeling method can be divided into a Modeling Technique and Mechanisms & Algorithms. A Modeling Technique can be further partitioned into a Modeling Language and a Modeling Procedure. The concepts of Figure 8 are now described briefly:

Steps Results Refers to Defines grammar Semantics Defines meaning Semantic Schema Syntax Semantic Mapping connects obeys Notation

Defines application of language delivers Used in Modelling Procedure Modelling Method Modelling Technique Mechanisms & Algorithms Modelling

Language MechanismsGeneric

& Algorithms Hybrid Mechanisms & Algorithms Specific Mechanisms & Algorithms Steps Results Semantics Semantic Schema Syntax Notation Modelling Procedure Modelling Method Modelling Technique Mechanisms & Algorithms Modelling

Language MechanismsGeneric

& Algorithms Hybrid Mechanisms & Algorithms Specific Mechanisms & Algorithms Used for Defines visualization visualizes Semantic Mapping Defines meaning of

Figure 8: Components of modeling methods according to KARAGIANNIS ANDK ¨UHN(2002)

• Modeling Language

A modeling language, according to Karagiannis and K¨uhn, consists of (1) Notation, de- picting the graphical representation of a modeling language e.g., by means of a shape, a figure, or a mathematically specified geometrical object for each of the modeling lan- guages’ elements; (2) Syntax, defining the grammar of the modeling language, i.e., spec- ifying the modeling elements and the rules for connecting these elements with each other by means of a meta model (GEISLER ET AL., 1998), or a graph grammar (ROZENBERG, 1997) optionally supplemented by Object Constraint Language (OCL) OBJECT MAN- AGEMENT GROUP (OMG) (2010) rules for constraining valid models; and (3) Seman- tics, specifying the meaning of both, the modeling languages’ elements defined in the syntax, and of the modeling language itself. Semantic specification is realized by a Se- mantic Mapping, referring the languages’ elements to a Semantic Schema. The Semantic Schema may be realized formally by an ontology.

• Modeling Procedure

A modeling procedure defines the Steps that need to be undertaken in order to build valid models according to a modeling language as well as the Results of applying the procedure. It therefore defines the application of a modeling language by executing Mechanisms & Algorithmsof the method.

• Mechanisms & Algorithms

Mechanisms & Algorithms are used to implement the functionality of the modeling lan- guage and the modeling procedure. Mechanisms are further divided into three cate- gories (K ¨UHN, 2004, p. 26f.) : (1) Generic Mechanisms, (2) Specific Mechanisms, and

(3) Hybrid Mechanisms. (1) are implemented on the meta meta level, they can be used generally for any modeling method that is described as an instance of this meta meta model; (2) subsumes all mechanisms that are specific, i.e., they are built upon a certain meta model and therefore can only be applied to model instances of that meta model; (3) defines mechanisms that can be classified both, generic and specific, i.e., generic mecha- nisms on the meta meta level that are adapted or parameterized with concepts of a certain meta model on the meta model level.

Both presented frameworks are quite similar, however they differ in comprehensiveness and focus. The framework of Ferstl and Sinz aims at providing a general description of a modeling method, therefore comprising the most relevant aspects of a modeling method. The framework of Karagiannis and K¨uhn on the other hand aims at providing a comprehensive description schema with an additional emphasis on the implementation of a modeling method and model processing. Therefore comprising not only static and behavioral aspects of a modeling method but also mechanisms and algorithms, implementing the model processing functionality of a method. One central aspect of the framework by Ferstl and Sinz is the metaphor of a model- ing method, whereas Karagiannis and K¨uhn considered the metaphor only inherently in their framework. Both frameworks are useful during the design and the documentation of model- ing methods as they help managing the complexity of the method itself and therefore foster the inter-subjective understanding, applicability, and distribution of a modeling method. The framework of Karagiannis and K¨uhn has its strengths when it comes to the development of a modeling tool. A strength of the framework proposed by Ferstl and Sinz is the emphasis on the architecture model, i.e., aligning a procedure model to different models, sub-models, viewpoints, or perspectives of a method.