Configurative Method Engineering - On the Applicability of Reference Modeling Mechanisms in Method Engineering
Configurative Method Engineering - On the Applicability of Reference Modeling Mechanisms in Method Engineering
December 2007
Ralf Knackstedt
Daniel Pfeiffer
European Research Center for Information Systems
Christian Janiesch
Recommended Citation
Becker, Jörg; Knackstedt, Ralf; Pfeiffer, Daniel; and Janiesch, Christian, "Configurative Method Engineering - On the Applicability of
Reference Modeling Mechanisms in Method Engineering" (2007). AMCIS 2007 Proceedings. 56.
http://aisel.aisnet.org/amcis2007/56
This material is brought to you by the Americas Conference on Information Systems (AMCIS) at AIS Electronic Library (AISeL). It has been accepted
for inclusion in AMCIS 2007 Proceedings by an authorized administrator of AIS Electronic Library (AISeL). For more information, please contact
[email protected].
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
Abstract
The aim of this paper is to discuss the applicability of reference modeling adaptation mechanisms in method
engineering. Reference models are generic conceptual models that formalize state-of-the-art knowledge of a certain
domain. Adaptation mechanisms can assist to tailor reference models to specific business or project needs.
(Situational) Method engineering is concerned with the preparation of methods that fit the characteristics of a
situation. Due to the similar requirements, it seems feasible to investigate to what extent the existing mechanisms of
reference modeling have already been reflected in the context of method engineering. The result of a literature
review points out that the mechanism of configuration has not been sufficiently considered yet. We suggest
transferring the concept of reference model configuration to the domain of method engineering. This approach is
supported by an example case utilizing the H2 toolset in which a method is configured according to project specific
needs.
Keywords
Method engineering, situational method engineering, adaptive reference modeling, configuration, theories.
1
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
work on method engineering to explicate their mechanisms of reuse and adaptation in comparison to existing approaches in
the domain of reference modeling. Based on this analysis, configuration is identified as a promising mechanism to reduce the
effort of method engineering.
The paper is structured as follows: First, a classification of reference modeling mechanisms is introduced to provide the basis
for the analysis. Subsequently, related work on method engineering is reviewed concerning their use of adaptation
mechanisms. Analog to configurative reference modeling (Becker et al. 2006a), a concept for configurative method
engineering is derived. The paper closes with a short summary of the main results and an outlook on future research
perspectives.
Figure 1. Meta model of the generic part of an adaptable reference modeling method
• Configuration: Reference models can be designed as configurable artifacts. They are provided with specific
attributes that contain configuration rules. Depending on the values assigned to the condition part of the rule it
can be decided whether the conclusion part of the rule has to be executed. The conclusion part can imply
consequences such as the elimination of model elements or the modification of their representation. With this
mechanism model variants regarding application-specific characteristics can be created in an automated
manner. The reference model is projected into a company-specific model based on the prior selection and
annotation of configuration parameters. An important application for this mechanism is for example to tailor a
reference model to a specific perspective such as a management view or software engineering view.
• Instantiation: When the mechanism of instantiation is used, reference models are equipped with placeholders.
The placeholders are inserted within the construction phase of the reference model and annotated with an
instantiation domain. When a specific model is created, the placeholders are filled with valid occurrences to the
2
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
particular circumstances. Depending on the properties of the application domain, numeric or alphanumeric
values, distinct model elements, or even composed model clusters can be defined as instantiation domains.
• Specialization: Through specialization a specific model is derived from a more general model by adapting,
extending and/or partially modifying the more general one. For this purpose, the model is annotated with
specialization instructions. Reference models which support specialization have a higher level of abstraction
than the resulting company specific models. These more abstract reference models offer only a relatively low
number of model elements.
• Aggregation: Reference models, which support aggregation, are not available as monolithic blocks but rather
contain independent parts, so called model element components. Within aggregation, a specific model is built by
assembling these model components. Interface descriptions of the model components offer information on their
general compatibility and how to combine them.
• Analogy Construction: As reference models are general artifacts they can be useful in domains they were not
constructed for. The application of a reference model can lead to conclusions by analogy. Analogies can be
drawn from any aspect of the reference model which can be indicated by the annotation of analogy construction
advices. This approach is used especially for analysis or design pattern collections.
Reference models must be prepared to support the mechanisms described above. Figure 1 contains the generic part of a
reference modeling method in which all adaptation mechanisms are specified. In order to apply a reference modeling method
in a certain domain, a specific part must be defined also. Figure 2 contains a meta model of the Entity-Relationship Model
(ERM) (Chen 1976).
3
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
4
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
In their situational method engineering approach Harmsen (1997), Brinkemper (1996) and Brinkkemper et al. (1998) focus in
particular on the recombination of method fragments and, thus, are using the mechanism of aggregation. They describe rules
in the context of the aggregation to guide the assembly of method fragments. Comparable approaches were for example
published by Fitzgerald et al. (2003), Gupta and Prakash (2001), Punter and Lemmen (1996), and Saeki and Wenyin (1994).
Kumar and Welke (1992) handle methodology components similarly but also stress the disassembly of old methods prior to
the assembly of new methods. Cameron (2002) puts so called work products together and chooses their temporal order to
define a specific development process. Baskerville and Stage (2001) as well as Patel et al. (2004) emphasize the need to adapt
5
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
a method after the aggregation by means of deletion, addition and/or modification. This so called method accommodation is
considered an application of the specialization mechanism.
Greiffenberg (2003a) has published a comprehensive approach for the development of modeling languages. Greiffenberg
specifies a meta modeling language, a reference meta model, a set of meta modeling patterns as well as a process model for
method engineering. Following Greiffenberg, the construction of a meta models is based on concepts. For this purpose the
mechanism of aggregation is used. Furthermore, Greiffenberg includes the mechanism of specialization for selecting from the
reference model. Analogy construction is taken into consideration by the application of meta modeling patterns.
Henninger et al. (2002) and van Offenbeek and Koopman (1996) base their methodology on existing scenarios or available
resources. They gather contextual factors such as risk to guide the adaptation process of a method. The procedure results
ultimately in a refined method that is a specialized version of the original or that is analog to the original. The refinement
process is strongly depending on the fit of original model to the specific problem. A configuration in terms of specific
adaptation points or parameters is not in focus.
Karlsson and Ågerfalk (2004), Karlsson (2005), and Karlsson and Wistrand (2006) are one of the few authors in method
engineering who directly addresses the mechanism of configuration. Adaptations of methods are performed by the use of
configuration packages which rest upon a base method. To manage complex situations with a number of characteristics,
configuration packages are combined to configuration templates. Based on the characteristics of a project, an acceptable
configuration template is chosen and applied on the base method. Thus, the base method is configured according to the
project needs. The configuration of the method focuses only the procedure model. Due to this fact, the modeling language
and the resulting products are only taken into consideration indirectly. A comparable approach that also focuses the process
of the method is suggested by Bajec et al. (2007).
Leppänen (2005) also makes use of method components that can be aggregated to form situation-specific methods. He,
however, focuses on forming an ontology that assists the selection and combination, i.e. integration, of these components. He
provides comprehensive interfaces that explicate the compatibility of method components. However, his ontology is not
intended to be the basis for any further configuration and, thus, only provides a means to perform method aggregation.
The approach of Nuseibeh (1994) focuses on the multi-perspectivity of software development with the ViewPoint
Framework. Due to the abstraction of viewpoints to viewpoint templates, this can be understood as a method engineering
approach. New methods can be designed by the combination of viewpoint templates. On the basis of an abstract super
template, specialization (inheritance) results in a more specific sub template. By applying the instantiation mechanisms on a
viewpoint template, a viewpoint is created.
Odell (1995) suggests a basic vocabulary for describing modeling methods, which is called kernel meta model. With the aid
of the kernel meta model, which is based on the mechanism of specialization, it is possible to derive specific concepts of
meta models. For example, the concept relation from the kernel meta model can be specialized as is super type of.
Ralyté et al. (2003) provide a generic process model for situational method engineering. With a map notation they describe
different strategies to construct a method that meets the contingencies of a project situation. The assembly-based strategy
reuses method chunks from a repository and compiles them by applying the aggregation mechanism (Ralyté and Rolland
2001b). The extension-based approach uses the specialization mechanism on an existing method and employs patterns to
provide novel additions to it (Ralyté and Rolland 2001a). The paradigm-based approach takes a meta-model that belongs to
a certain theoretical framework as starting point. By analogy construction and specialization the meta model is adapted to the
specific needs. Mirbel and Ralyté (2006) include the a detailed refinement of a project specific method by each project
member. They describe the aggregation of method chunks for the development of project specific methods. For adapting the
method with respect to the necessity of every project member, they suggest the adaptation of the procedure (roadmap) of the
project specific method by the mechanism of specialization; e.g. the user is able to choose between a prosaic way and use
case diagrams to document a requirements analysis depending on his expertise.
Tolvanen (1998) and Rossi et al. (2004) are highlighting the iterative, incremental aspects of method engineering. They
assume that due to the inadequate acknowledgement of the application domain at the beginning of the method engineering
project, only a part of the method specification is possible. Thus, an iterative process for evaluation and refinement of the
method is necessary to reach an adequate description level for the method. This includes adaptation (specialization) and
addition of missed constructs (aggregation).
This literature review has shown that the adaptation mechanisms of aggregation, instantiation, specialization and analogy
construction are widely used by method engineering researchers. Especially aggregation and specialization are included in
many approaches. However, the configuration of modeling methods and here especially the product and language aspects
6
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
have not been sufficiently addressed yet. Hence, the aim of this work is to transfer the mechanism of configuration into
method engineering research.
Figure 4. Meta model of a configurable method (cf. Braun et al. 2005; Karlsson 2005)
Similar to configurable reference models also configurable methods can be annotated with configuration rules. Configuration
rules describe in which way methods can be adapted to specific-application contexts. The rules are composed of a condition
part and a conclusion part. The condition part defines the application contexts by logical combination of configuration
parameters. These parameters can include but are not limited to objectives of the method’s use, application systems or
respectively organizations to be designed, roles, qualifications, and other attributes of the method users as well as financial,
time, personnel, and other restrictions. Contingency factors for methods adaptations can be found for example in Davis
(1982), Offenbeek and Koopman (1996), or Pérez et al. (1995). The conclusion part of the configuration rule describes the
kind of adaptation that is performed on the method. It specifies the method elements of a configurable method which either
persist within the organization specific method or have to be eliminated. The specific configuration points at which
configuration rules can be annotated may differ depending on the method to be made configurable. Common configuration
points for modeling methods are at the levels of constructs, actions or roles. Furthermore, deviations in notation and
terminology can be incorporated.
7
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
Configurable methods comprise knowledge about all situation-specific methods, which can be derived from them. Therefore,
the configurable methods are, similar to reference models, very comprehensive. They can contain method elements which are
used only occasionally or that exhibit very different levels of granularity. This is necessary to support rule-based
modifications for very particular cases as well as to be able to get project-specific or company-specific methods with diverse
granularities.
The annotation of the configuration rules has to be performed by the method engineer prior to making the method available
for configuration to method users. In this way, the engineer provides a consistent reference method or method master that can
be adapted to the specific situational needs of a company, domain, purpose, or project. The challenge of a method engineer is
to bear in mind the interdependencies between method elements and configuration rules (cf. similarly Becker et al. 2006b). In
this way, the set of terms for any configuration parameter occurrence results in a consistent method variant.
8
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
This is done with the configuration customizer and the term editor (cf. right tab of Figure 6). Secondly, the conclusion part is
defined that enables the engineer to either dismiss elements from the method or to include them explicitly.
The configuration itself is checkbox-based and performable by the method users. A simple example reads as follows (again
cf. Figure 6 for illustration): By selecting the role of a software architect and open source as a type of project, the
configuration of the method would result in the omission of all activities and their super ordinate phases that are not
performed by the software architect and the dismissal of any software tool that is not open source such as the products by
Microsoft and Rational. This represents only a very simple configuration task as configuration can take place on many other
configuration points as introduced in the previous section.
9
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
engineering revealed that the mechanism of configuration – as it is applied in reference modeling – was hardly recognized in
the context of method engineering. This absence marked the starting point for an operationalization of configuration for
method engineering, which was exemplified by employing the H2 Toolset.
The definition of configuration rules enables their empirical evaluation and fosters theory building. This, however, requires
that configurable methods are available. Paramount to further research is to enhance current methods with appropriate
configuration rules. In addition to that, it is necessary to modify modeling tools to assure software-based support for method
configuration. This step is also necessary to evaluate our approach. Furthermore, the design of procedures is required that
assist the configuration of complex methods. Since configuration intents to hide complexity from the user, criteria for the
design of user interfaces (Shneiderman 2004) as well as high level configuration approaches (Janiesch et al. 2006) have to be
taken into consideration.
With configuration mechanisms for methods available, the actual definition of configuration rules and their parameters
moves into the focus of interest. In particular, a combination of the presented proposal with the approach of Karlsson (2005)
and the contextual parameters of Leppänen (2005) seems to be promising. Apart from configuration also the mechanism of
instantiation is only sporadically considered by the method engineering community. It is due to further research to extend this
approach.
References
Bajec, M., Vavpoti , D., and Krisper, M. "Practice-driven approach for creating project-specific software development
methods," Information and Software Technology (49:4) 2007, pp. 345-365.
Baskerville, R., and Stage, J. "Accommodating Emergent Work Practices: Ethnographic Choice of Method Fragements,"
IFIP TC8/WG8.2 Working Conference on Realigning Research and Practice in IS Development: The Social and
Organisational Perspective, Boise, ID, 2001, pp. 12-28.
Becker, J., Delfmann, P., and Knackstedt, R. "Adaptive Reference Modeling: Integrating Configurative and Generic
Adaptation Techniques for Information Models," Reference Modeling Conference (RefMod2006), Passau, 2006a.
Becker, J., Janiesch, C., and Dreiling, A. "A Framework for Interdependent Configuration of Enterprise Systems," (Pre-)ICIS
Inaugural Workshop on Enterprise Systems Research in MIS, Milwaukee, WI, 2006b.
Becker, J., Janiesch, C., Seidel, S., and Brelage, C. "A Framework for Situational and Evolutionary Language Adaptation in
Information Systems Development," 15th International Conference on Information Systems Development (ISD
2006), Budapest, 2006c.
Becker, J., Kugeler, M., and Rosemann, M. (eds.) Process Management: A Guide for the Design of Business Processes.
Springer, Berlin, 2007. To appear.
Becker, J., and Schütte, R. "A Reference Model for Retail Enterprises," in: Reference Modeling for Business Systems
Analysis, P. Fettke and P. Loos (eds.), Idea Group, Hershey, USA, 2007, pp. 182-205.
Braun, C., Wortmann, F., Hafner, M., and Winter, R. "Method Construction: A Core Approach to Organizational
Engineering," 20th ACM Symposium on Applied Computing, Santa Fe, NM, 2005, pp. 1295-1299.
Brinkkemper, S. "Method engineering - engineering of information systems development methods and tools," Information
and Software Technology (38:4) 1996, pp. 275-280.
Brinkkemper, S., Saeki, M., and Harmsen, F. "Assembly Techniques for Method Engineering," 10th International Conference
on Advanced Information Systems Engineering (CAiSE 1998). Lecture Notes in Computer Science, Springer, Pisa,
1998, pp. 381-400.
Brooks, F.P. "Essence and Accidents of Software Engineering," IEEE Computer (20:4) 1987, pp. 10-19.
Cameron, J. "Configurable Development Processes," Communications of the ACM (45:3) 2002, pp. 72-77.
Chen, P.P.-S. "The Entity Relationship Model - Toward a Unified View of Data," ACM Transaction on Database Systems
(1:1) 1976, pp. p. 9-36.
Davis, G.B. "Strategies for information requirements determination," IBM Systems Journal (21:1) 1982, pp. 4-30.
Dreiling, A., Rosemann, M., van der Aalst, W., Heuser, L., and Schulz, K. "Model-Based Software Configuration: Patterns
and Languages," European Journal of Information Systems (15:6) 2006, pp. 583-600.
Fettke, P., and Loos, L. "Classification of reference models—a methodology and its application," Information systems and e-
business management (1:1) 2003, pp. 35-53.
Fitzgerald, B., Russo, N.L., and O'Kane, T. "Software Development: Method Tailoring at Motorola," Communications of the
ACM (46:4) 2003, pp. 65-70.
Greiffenberg, S. "Methoden als Theorien der Wirtschaftsinformatik," 6. Internationale Tagung Wirtschaftsinformatik (WI
2003), Physica, Dresden, 2003a, pp. 947-968.
Greiffenberg, S. Methodenentwicklung in Wirtschaft und Verwaltung Verlag Dr. Kovac, Hamburg, 2003b.
10
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
Gupta, D., and Prakash, N. "Engineering Methods from Method Requirements Specifications," Requirements Engineering
(6:3) 2001, pp. 135-160.
Harmsen, A.F. "Situational Method Engineering," Utrecht, 1997.
Henninger, S., Ivaturi, A., Nuli, K., and Thirunavukkaras, A. "Supporting Adaptable Methodologies to Meet Evolving Project
Needs," Joint Conference on XP Universe and Agile Universe, Chicago, IL, 2002, pp. 33-44.
Janiesch, C. "Implementing Views on Business Semantics: Model-based Configuration of Business Documents," 15th
European Conference on Information Systems (ECIS 2007), St. Gallen, 2007.
Janiesch, C., Dreiling, A., and Seidel, S. "Document Variant Management: Facilitating Enterprise System Definition,
Configuration, and Interoperability," 17th Australasian Conference on Information Systems (ACIS 2006), Adelaide,
2006.
Karlsson, F. "Method Configuration: Method and Computerized Tool Support," Linköping, 2005.
Karlsson, F., and Ågerfalk, P.J. "Method configuration: adapting to situational characteristics while creating reusable assets,"
Information and Software Technology (46:9) 2004, pp. 619-633.
Karlsson, F., and Wistrand, K. "Combining method engineering with activity theory: theoretical grounding of the method
component concept," European Journal of Information Systems (15:1) 2006, pp. 82-90.
Kautz, K. "The Enactment of Methodology: The Case of Developing a Multimedia Information System," 25th International
Conference on Information Systems (ICIS 2004), Washington, D.C., 2004, pp. 671-683.
Kelly, S., Rossi, M., and Tolvanen, J.-P. "What is Needed in a MetaCASE Environment?," Enterprise Modelling and
Information Systems Architectures (1:1) 2005, pp. 25-35.
Kumar, K., and Welke, R.J. "Methodology Engineering: A Proposal for Situation-specific Methodology Construction," in:
Challenges and Strategies for Research in Systems Development, W.W. Cottermann and J.A. Senn (eds.), John
Wiley & Sons Ltd., Chichester, 1992, pp. 257-269.
Leppänen, M. "An Ontological Framework and a Methodical Skeleton for Method Engineering: A Contextual Approach,"
Jyväskylä, Jyväskylä, 2005.
Lindvall, M., and Rus, I. "Process Diversity in Software Development," IEEE Software (17:4) 2000, pp. 14-18.
Luoma, J., Kelly, S., and Tolvanen, J.-P. "Defining Domain-Specific Modeling Languages: Collected Experiences," 4th
OOPSLA Workshop on Domain-Specific Modeling (DSM 2004), Vancouver, 2004.
Mirbel, I., and Ralyté, J. "Situational Method Engineering: Combining Assembly-based and Roadmap-driven Approaches,"
Requirements Engineering (11:1) 2006, pp. 58-78.
Nuseibeh, B.A. "A Multi-Perspective Framework for Method Integration," London, 1994.
Odell, J. "Meta-modelling," OOPSLA'95 Workshop on Metamodelling in OO Austin, TX, 1995.
Patel, C., de Cesare, S., Iacovelli, N., and Merico, A. "A Framework for Method Tailoring: A Case Study," 2nd OOPSLA
Workshop on Method Engineering for Object-Oriented and Component-Based Development, Vancouver, 2004.
Pérez, G., El Emam, K., and Madhavji, N.H. "Customising Software Process Models," 4th European Workshop on Software
Process Technology (EWSPT 1995), Noordwijkerhout, The Netherlands, 1995, pp. 70-78.
Punter, T., and Lemmen, K. "The MEMA-model: towards a new approach for Method Engineering," Information and
Software Technology (38:4) 1996, pp. 295-300.
Ralyté, J., Deneckère, R., and Rolland, C. "Towards a Generic Model for Situational Method Engineering," 15th International
Conference on Advanced Information Systems Engineering (CAiSE 2003), Klagenfurt/Velden, Austria, 2003, pp.
95-110.
Ralyté, J., and Rolland, C. "An Approach for Method Reengineering," 20th International Conference on Conceptual
Modeling (ER 2001), Yokohama, Japan, 2001a, pp. 471-484.
Ralyté, J., and Rolland, C. "An Assembly Process Model for Method Engineering," 13th International Conference on
Advanced Information Systems Engineering (CAiSE 2001). Lecture Notes in Computer Science, Interlaken, 2001b,
pp. 267-283.
Rosemann, M., and van der Aalst, W.M.P. "A configurable reference modelling language," Information Systems (32:1) 2007,
pp. 1-23.
Rossi, M., Ramesh, B., Lyytinen, K., and Tolvanen, J.-P. "Managing Evolutionary Method Engineering by Method
Rationale," Journal of the Association for Information Systems (5:9) 2004, pp. 356-391.
Saeki, M., and Wenyin, K. "Specifying software specification & design methods," 6th International Conference on Advanced
Information Systems Engineering (CAiSE 1994), Utrecht, The Netherlands, 1994.
Scheer, A.-W., Jost, W., and Güngöz, Ö. "A Reference Model for Industrial Enterprises," in: Reference Modeling for
Business Systems Analysis, P. Fettke and P. Loos (eds.), Idea Group, Hershey, USA, 2007, pp. 167-181.
Shneiderman, B. Designing the User Interface: Strategies for Effective Human-Computer Interaction, (4th ed.) Addison-
Wesley Amsterdam, 2004.
11
Becker, Knackstedt, Pfeiffer and Janiesch Configurative Method Engineering
Soffer, P., Golany, B., and Dori, D. "ERP modeling: a comprehensive approach," Information Systems (28:6) 2003, pp. 673-
690.
Song, X. "Systematic integration of design methods," IEEE Software (14:2) 1997, pp. 107-117.
ter Hofstede, A.H.M., and Verhoef, T.F. "On the Feasibility of Situational Method Engineering," Information Systems
(22:6/7) 1997, pp. 401-422.
Tolvanen, J.-P. "Incremental Method Engineering with Modeling Tools: Theoretical Principles and Empirical Evidence," M.
Sakkinen (ed.), Jyväskylä, 1998.
van Offenbeek, M.A.G., and Koopman, P.L. "Scenarios for System Development: Matching Context and Strategy,"
Behaviour & Information Technology (15:4) 1996, pp. 250-265.
vom Brocke, J. "Design Principles for Reference Modelling – Reusing Information Models by Means of Aggregation,
Specialisation, Instantiation, and Analogy," in: Reference Modeling for Business Systems Analysis, P. Fettke and P.
Loos (eds.), Idea Group Publishing, Hershey, 2007, pp. 47-75.
Wistrand, K., and Karlsson, F. "Method Components – Rationale Revealed," 16th International Conference on Advanced
Information Systems Engineering (CAiSE 2004), Riga, Latvia, 2004, pp. 189-201.
12