Organizing Business Knowledge The Mit Process Handbook [Electronic resources]

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

نسخه متنی -صفحه : 185/ 156
نمايش فراداده

section A.6.

The PIF-CORE, on the other hand, consists of the minimal set of constructs necessary to translate simple but nontrivial process descriptions. There is the usual trade-off between simplicity and expressiveness. The PIF-CORE could have been chosen to contain only the constructs necessary for describing the simplest process descriptions such as a precedence network. Such a PIF-CORE then would not be able to translate many process descriptions. On the other hand, the PIF-CORE could have contained constructs suffcient for expressing the information contained in process descriptions of richer complexity. Such a PIF-CORE then would contain many constructs that may not be needed for many simpler descriptions. The PIF-CORE strikes a balance in this trade-off by first collecting process descriptions, starting from the simplest and continuing with more complex until we have reasonably many of them, and then by looking for a set of constructs that can translate the process descriptions in this collection. The following paragraph describes the rationales for each of the constructs in the PIF-CORE. The attributes of each of these constructs are described in section A.5.

In PIF, everything is an ENTITY; that is, every PIF construct is a specialization of ENTITY. There are four types of ENTITY: ACTIVITY, OBJECT, TIMEPOINT, and RELATION. These four types are derived from the definition of process in PIF: a process is a set of ACTIVITIES that stand in certain RELATIONS to one another and to OBJECTS over TIMEPOINTS.

The following discussion provides intuitive rationales for each of these four constructs. Their precise semantics, however, are defined by the relations they have with other constructs (cf. section A.5).

ACTIVITY represents anything that happens over time. DECISION, which represent conditional activities, is the only special type of ACTIVITY that the PIF-CORE recognizes. In particular, the PIF-CORE does not make any distinction among process, procedure, or event. A TIMEPOINT represents a particular point in time, for example ''Oct. 2, 2.32 p.m. 1995''or ''the time at which the notice is received.''An OBJECT is intended to represent all the types of entities involved in a process description beyond the other three primitive ones of ACTIVITY, TIME-POINT, and RELATION. AGENT is a special type of OBJECT.

RELATION represents relations among the other constructs. The PIF-CORE offers the following relations: BEFORE, SUCCESSOR, CREATES, USES, MODIFIES, and PERFORMS.

BEFORE represents a temporal relation between TIMEPOINTS. SUCCESSOR (Activity-1, Activity-2) is defined to be the relation between ACTIVITIES where BEFORE (Activity-1.End, Activity-2.Begin) holds. It is provided as a shorthand for simple activity precedence relations.

CREATES, USES, and MODIFIES represent relations between ACTIVITY and OBJECT. In these relations the object is assumed to be created, used, and modified at some nondeterminate timepoint(s) in the duration of the activity (i.e., between its Begin and its End timepoint inclusively). Hence the object would have been created, used, or modified by the End timepoint, but no commitment is made as to when the object is actually created, used, or modified. PERFORMS represents a relation between OBJECT (normally an AGENT specialization) and ACTIVITY. In the PERFORMS relation, the actor is assumed to perform the activity at some nondeterminate timepoint(s) in the duration of the activity (possibly for the whole duration, but not necessarily). We understand that there are other possible interpretations of these relations. For example, we might want to specify that a given actor is the only one who performs the activity during the whole activity interval. Such a specification, however, will require a PSV extension of the PIF-CORE (e.g., by introducing a relation such as PERFORMS-EXCLUSIVELY; cf. section A.6).

SUCCESSOR in PIF may not correspond exactly to the notions of successor as used in some work flow or enactment systems because it is common in these systems to bundle into a single relationship a mixture of temporal, causal, and decomposition relationships among activities. PIF provides precise, separate relationships for all three of these activities-to-activity specifications. For example, the temporal relationship is specified with the BEFORE relation, the causal relation with the Precondition and Postcondition attributes of ACTIVITY, and the decomposition relation with the Component attribute. Its intention is to allow the exact meaning to be communicated. Hence one might have to combine some of these constructs to capture exactly the meaning of SUCCESSOR as used in one's own system.

The attribute value of a PIF-CORE object holds independent of time (i.e., no temporal scope is associated with an attribute value in the PIF-CORE). Any property of an object that can change over time should be represented by a RELATION that links the property to a timepoint. An example of one such RELATION in the PIF-CORE is ACTIVITY-STATUS which is used to represent the status (e.g., DELAYED, PENDING) of an ACTIVITY at different times. The ACTIVITY-STATUS is provided in the PIF-CORE because it is the one example of a dynamic property of those objects commonly used in process modeling and work flow systems and modeled in the PIF-CORE. Other properties of those objects included in the PIF-CORE are, for the most part, true for all time. As mentioned before, it is possible to extend the PIF-CORE to express additional temporally scoped properties by introducing additional RELATIONS. It is also possible to add temporally scoped version of the static attributes already in the PIF-CORE. In this case, any such static attributes actually specified in a PIF file holds true for all time.

The attribute value of a PIF object can be one of the PIF value types specified above. The PIF primitive value types consist of NUMBER, STRING, and SYMBOL. The PIF composite value types are LIST and PIF-SENTENCE. LIST is used for conveying structured information that is not to be evaluated by a PIF interpreter, but simply passed along (e.g., as in the User-Attribute attribute of ENTITY). PIF-SENTENCE is used to specify a condition that is either true or false, as required, for example, for the Precondition and the Postcondition attributes of ACTIVITY.

PIF-SENTENCE is a logical expression that may include variables, quantifiers, and the boolean operators for expressing conditions or constraints. A PIFSENTENCE is used in the Constraint slot of ENTITY, the Precondition and the Postcondition slots of ACTIVITY, and the If slot of DECISION. A variable in a PIF-SENTENCE takes the following positions in the three dimensions that define the possible usage:

  1. The scope of the variable is the frame. That is, variables of the same name within a frame definition are bound to the same object, whereas they are not necessarily so if they occur in different frames.

  2. A variable is assumed to be bound by an implicit existential quantifier.

  3. The constraints on variables in a frame definition are expressed in the Constraints slot of that frame. These constraints are local to the frame.

These positions are expected to be extended by some PSV modules. Some PSV modules will extend the scope of a variable beyond a single object. Some will introduce explicit existential and universal quantifiers. Yet others will allow global constraints to be stated, possibly by providing an object where such global constraints that hold across all the objects in a PIF file (e.g., 'All purchase order must be approved by the finance supervisor before sent out').

Notable Absence We have decided not to include ROLE because a role may be defined wherever an attribute is defined. For example, the concept of RESOURCE is a role defined by the Resource attribute of the USE relation. Any object, we view, is a resource if it can be USEd by an ACTIVITY. As a consequence we have decided not to include ROLE or any construct that represents a role, such as RESOURCE. ACTOR is not included in PIF because it is another role concept, one defined by the Actor attribute of the PERFORMS relation. Any object, as long as it can fill the Actor attribute, can be viewed as an ACTOR. Hence we resolved that explicit introduction of the constructs such as ACTOR or RESOURCE is redundant and may lead to potential confusions. We should note, however, that the PIF-CORE provides the construct AGENT, which is not defined by a role an entity plays but by its inherent characteristic, namely its capability (e.g., of making intelligent decisions in various domains).