Chapter 5: Defining Specialization for Process Models - Organizing Business Knowledge The Mit Process Handbook [Electronic resources] نسخه متنی

This is a Digital Library

With over 100,000 free electronic resource in Persian, Arabic and English

Organizing Business Knowledge The Mit Process Handbook [Electronic resources] - نسخه متنی

Thomas W. Malone, Kevin Crowston, George A. Herman

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
توضیحات
افزودن یادداشت جدید







Chapter 5: Defining Specialization for Process Models


George M. Wyner,


Jintae Lee



5.1 Introduction



As the literature on object-oriented analysis and design attests, specialization of objects is a powerful source of advantage for the design as well as the implementation of information systems (Booch 1991; Coad and Yourdon 1990; De Champeaux 1991; De Champeaux et al. 1990; Maksay and Pigneur 1991; Rogers 1991; Rumbaugh et al. 1991; Taivalsaari 1996; Takagaki and Wand 1991). For example, the specialization hierarchy, in which each object inherits the features of its parent and modifies them incrementally, promotes comprehensibility, maintainability, and reusability.


When modeling system behavior, however, systems analysts continue to rely on traditional tools such as state diagrams and dataflow diagrams. While such diagrams capture important aspects of the processes they model, they offer limited guidance as to the ways in which a process can be improved.


Malone et al. (1999) have argued that this limitation of the current approach to information systems design can be addressed by employing a specialization hierarchy of processes. In addition to the benefits of comprehensibility and reusability, a process specialization hierarchy offers two major advantages from the organizational design perspective. First, it supports systematic generation of design alternatives. Variants of an existing process can be generated systematically and then evaluated along the dimensions of specialization. This generativity[1] is especially important in the absence of tools that support the design generation stage (Alexander 1979). Second, it offers an organizational framework in which to index and search for relevant processes (Malone et al. 1999). This support for locating relevant processes is especially important in the context of a large database of reusable process models, such as the Process Handbook, designed to support component-based process modeling and design.


The potential value of such an approach is especially promising in light of dramatic changes introduced into organizations by the rise of new information technologies, most recently Web computing and the resulting development of electronic commerce. In this chapter we focus on the specialization of processes. We argue that a clear understanding of when one process is a special case of another and a mastery of the means by which specialized processes can be generated systematically will offer significant support for a more effective exploration of the new design territory opened up by these technologies, since it is arguably processes which must be transformed if business is to tap the potential of these technologies. Once generated by specialization, process variants can be explored and tested for their fit to the new environment (Malone et al. 1999).


Implementing such a process hierarchy, however, will require a clear definition of what it means for one process to be a specialization of another, and some guidelines as to how to go about specializing a process in practice.


One obvious approach to this problem is to treat the process as a class with a set of attributes and then to specialize processes in the same way that objects are specialized: by subtyping attributes and adding new attributes. It is not obvious, however, how this approach applies to process descriptions, which are typically complex aggregates of nodes and arcs. Consider, for example, the two state diagrams in figure 5.1. Diagram A contains two states R and S. Diagram B is identical except that a third state T has been added. Following the usual approach to specialization, we might argue that the diagram with the additional feature, diagram B, is a specialization of diagram A. However, one might also maintain that diagram A is the specialization, since diagram B includes all the behaviors of diagram A, but not vice versa, and thus diagram A is a special case of diagram B. Any approach to specializing process representations must yield an operationalization that can explain such a puzzle.




Figure 5.1: Which diagram is the specialization?


In this chapter we propose a definition of process specialization that resolves this puzzle and supports organizational design by enabling the systematic generation and location of design alternatives. We do not claim at this point that our results generalize beyond the two representations discussed (state diagrams and dataflow diagrams), although we believe that such general results will be possible. Nor do we claim to be defining a new paradigm in the sense that object-oriented analysis and design is one. Rather, the major goal of this chapter is to define process specialization so that process representations as well as object representations can be subjected to existing object-oriented methods especially in the context of organizational design.


The rest of the chapter proceeds as follows: Section 5.2 develops a general framework for process specialization. Section 5.3 applies this approach to state diagrams, deriving a set of transformations which, when applied to any state machine, result in a specialization. Section 5.4 illustrates the potential benefits of this approach by means of a restaurant information system example. Section 5.5 extends the analysis to dataflow diagrams, and section 5.6 provides an example of how a simple dataflow diagram can be specialized. Section 5.7 compares this approach to related work. Section 5.8 identifies and resolves a number of apparent inconsistencies between this approach to process specialization and the approach taken in the object-oriented paradigm. Finally, section 5.9 summarizes the results and suggests directions for future research.


[1]There is recent precedent for employing the term ''generativity''to refer to the capacity of a system to generate novel expressions, combinations, ideas, or productions. See, for example, Alexander (1979) and Malone et al. (1999).


/ 185