Up Previous Next Title Page Contents

4.1 Introduction

One part of engineering, and therefore also of method engineering, is concerned with model building, analysis, and implementation tasks. Accordingly, it is of great importance to understand how knowledge about model building, analysis, and implementation can be captured, represented, and analyzed (Welke 1988, Wijers 1991, Brinkkemper 1996). Therefore, in this chapter we shall focus on our first research question (cf. Section 1.5.3) dealing with constructs of metamodeling languages:
 
 
“How completely can meta-data models represent knowledge about ISD methods for modeling tools?”
 
 
Metamodeling constructs are needed to model method knowledge as completely as possible. By completely we mean the 100% principle suggested by Griethuysen (1982), which has also been applied to the metalevel by Brinkkemper (1990). The principle states that a metamodel should describe all relevant aspects of a method. According to this ideal, a metamodeling language should be capable of modeling all aspects of the method knowledge. It must be noticed, however, that our focus is on meta-data models (i.e. on the static conceptual structure behind modeling techniques, cf. metamodels in Section 3.3.3), and therefore we exclude the modeling of other types of method knowledge (e.g. such as processes in Brinkkemper (1990), or participation in Tolvanen et al. (1993)). Instead of focusing on general data modeling constructs like classification, generalization, and aggregation provided by semantic data models (Brodie 1984), we shall focus on specific constructs in metamodeling languages that are essential in modeling methods. These constructs extend available data modeling languages in several ways and provide a basis for modeling method knowledge more completely. The proposed constructs are not necessarily essential in other modeling domains, as some deal with specifying knowledge about single techniques (i.e. their conceptual structures, rules and constraints), and some with integrating multiple techniques into a method.

In seeking essential constructs for meta-data modeling we will follow an inductive approach. We shall analyze in detail what kind of knowledge ISD methods in computer-aided modeling tools include, as well as how and to what extent this knowledge can be included into a metamodel which is based on a semantic data model. The analysis of 17 ISD methods carried out as a metamodeling task also includes tool adaptation for each method. This allows us to obtain a detailed understanding of the structure and content of method knowledge. The resultant patterns, categories and rules of a method, defined here as part of method knowledge, are used to derive requirements for metamodeling (Patton 1990). To our knowledge (cf. Tolvanen et al. 1996) this kind of approach has not been applied to such an extent for analyzing and developing languages for method engineering[15]. Because of the inductive research approach, the proposed requirements for metamodeling can not be claimed to be complete, but rather they represent an essential set of constructs needed to model the modeling techniques of the selected “sample”. Additional requirements for metamodeling languages may be found if more ISD methods were included in the study.

We will assess the metamodeling capabilities of available metamodeling languages based on the derived requirements: how do they satisfy the essential need to capture and specify method knowledge and serve as a metametamodel? Hence, this assessment extends the analysis of metamodeling languages described in Section 3.3.3. It must be noted that our aim here is not to develop a new metamodeling language, but rather determine a set of constructs applicable for metamodeling, and which are necessary for “good” metamodeling languages. The results of the assessment can be applied by developers of metamodeling languages to improve their languages, and also by metamodelers to specify methods more completely. These extensions will also be applied to specify metamodels in the action research studies reported in Chapter 6.

The chapter will proceed as follows. In the next section we describe the research method in more detail and discuss the metamodeling process. In Section 4.3 we describe some of the metamodels which were developed and CASE tools which were modified. Section 4.4 defines the essential metamodeling constructs needed to model a single technique as well as a complete method. In Section 4.5 a set of metamodeling languages is assessed in terms of how they support metamodeling. Based on this assessment we identify some limitations in the modeling power of semantic data models and highlight aspects of method knowledge which can not be captured with their data modeling constructs. This provides motivation for further research to extend semantic data models with additional constructs. Section 4.6 summarizes the chapter.

[15] A typical research approach is based on the selection of one (or a few) ISD methods as examples, and on studying how they can be represented with the proposed metamodeling language (e.g. Smolander 1992, Welke 1988, Hofstede 1993, Saeki and Wenyin 1994).

Up Previous Next Title Page Contents