Jump to content

Event-driven process chain

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 217.194.34.124 (talk) at 14:03, 4 April 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The method of event-driven process chain (EPC) has been developed within the framework of ARIS and is used by many companies for modeling, analyzing, and redesigning business processes [Ferdian01]. As such it forms the core technique for modeling in ARIS, which serves to link the different views in the so-called control view, which will be elaborated in section of ARIS Business Process Modeling.

An EPC is an ordered graph of events and functions. It provides various connectors that allow alternative and parallel execution of processes [Telematica Instituut04]. Furthermore it is specified by the usages of logical operators, such as OR, AND, and XOR. A major strength of EPC is its simplicity and easy-to-understand notation. This makes EPC a widely acceptable technique to denote business processes.

In the following the elements used in EPC diagram will be described:

File:Elements of an Event-driven Process Chain.jpg

Fig.2: Elements of an Event-driven Process Chain

  • Event. Events are passive elements in EPC. They describe under what circumstances a function or a process works or which state a function or a process results. Examples of events are “requirement captured”, “material on stock”, etc. In the EPC graph an event is represented as hexagon.
  • Function. Functions are active elements in EPC. They model the tasks or activities within the company. Functions describe transformations from an initial state to a resulting state. In case different resulting states can occur, the selection of the respective resulting state can be modeled explicitly as a decision function using logical connectors. Functions can be refined into another EPC. In this case it is called hierarchical function. Examples of functions are “capture requirement”, “check material on stock”, etc. In the EPC graph a function is represented as rounded rectangle.
  • Organization unit. Organization units determine which person or organization within the structure of an enterprise is responsible for a specific function. Examples are “sales department”, “sales manager”, “procurement manager”, etc. It is represented as an ellipse with a vertical line.
  • Information, material, or resource object. In the EPC, the information, material, or resource objects portray objects in the real world, for example business objects, entities, etc., which can be input data serving as the basis for a function, or output data produced by a function. Examples are “material”, “order”, etc. In the EPC graph such an object is represented as rectangle.
  • Process path. Process paths serve as navigation aid in the EPC. They show the connection from or to other processes. There are two EPCs – process 1 and process 2. The process 1 to process 2 with a process path at the end of process 1 points to process 2 and in the beginning of process 2 refers to process 1. A process path is represented in EPC as a “function and event” symbol (function symbol in front of event symbol). There are three kinds of logical relationships defined in EPC:

Branch/Merge. Branch and merge correspond to making decision of which path to choose among several control flows. A branch may have one incoming control flow and two or more outgoing control flows. When the condition is fulfilled, a branch activates exactly only one of the outgoing control flows and deactivates the others.

The counterpart of a branch is a merge. A merge may have two or more incoming flows and one outgoing control flow. A merge synchronizes an activated and the deactivated alternatives. The control will then be passed to the next element after the merge. A branch in the EPC is represented by an opening ‘XOR’, whereas a merge is represented as a closing ‘XOR’ connectors.

Fork/Join. Fork and join correspond to activating all paths in the control flow concurrently. A fork may have one incoming control flow and two or more outgoing control flows. When the condition is fulfilled, a fork activates all of the outgoing control flows in parallel. A join may have two or more incoming control flows and one outgoing control flow. A join synchronizes all activated incoming control flows. In the EPC diagram how the concurrency achieved is not a matter. In reality the concurrency can be achieved by true parallelism or by virtual concurrency achieved by interleaving. A fork in the EPC is represented by an opening ‘AND’, whereas a join is represented as a closing ‘AND’ connectors.

File:AND of EPC.jpg

OR. An ‘OR’ relationship corresponds to activating one or more paths among control flows. An opening ‘OR’ connector may have one incoming control flow and two or more outgoing control flows. When the condition is fulfilled, an opening ‘OR’ connector activates one or more control flows and deactivates the rest of them. The counterpart of this is the closing ‘OR’ connector. When at least one of the incoming control flows is activated, the closing ‘OR’ connector will pass the control to the next element after it.

File:OR of EPC.jpg

  • Control flow. A control flow connects events with functions, process paths, or logical connectors creating chronological sequence and logical interdependencies between them. A control flow is represented as a dashed arrow.
  • Logical connector. In the EPC the logical relationships between elements in the control flow, that is, events and functions are described by logical connectors. With the help of logical connectors it is possible to split the control flow from one flow to two or more flows and to synchronize the control flow from two or more flows to one flow.
  • Information flow. Information flows show the connection between functions and input or output data, upon which the function reads changes or writes.
  • Organization unit assignment. Organization unit assignments show the connection between an organization unit and the function it is responsible for.

Following is an example of an EPC diagram showing an excerpt from procurement logistics.

File:Example of an EPC diagram.jpg

Fig.3: Example of an EPC diagram showing an excerpt from procurement logistics

As shown in figure 3, customers occur requirement as the initial event, which creates requirement capture happens within the company. In order to specify this function, sales is responsible for marketing, currency etc. As a result, event ‘requirement captured’ leads to another new function: check material on stock, in order to manufacture the productions. All input or output data about material remains in the information resource. After checking material, two events may happen-with or without material on stock. If positive, get material from stock; if not, order material from suppliers. Since the two situations cannot happen at the same time, XOR is the proper connector to link them together.

In order to explicit EPC in a clear way, Meta- model of EPC will be given in the following graph.

File:Meta-model of EPC.jpg

Fig.4 Meta-model of EPC

Although a real process may include a series of stages until it is finished eventually, the main activities remain similar. An event triggers one function; as well function will lead to one event. Meanwhile, an event may involve only one or more processes to fulfill, but process is unique for one event, the same goes Process and Process Path. As for function, its data may be included in one or more information resources, while Organization Unit is only responsible for one specific function.