meta data for this page
Create Event-Driven Process Chains
- The Event-Driven Process Chain (EPC) is a graphical modeling language for the representation of business processes of an organization. It is used in business process modeling to map the procedures and work steps.
- It was developed in 1992 by a working group led by August-Wilhelm Scheer at Saarland University in Saarbrücken as part of a research project with SAP SE on the semiformal description of business processes1).
- This modeling language is intended to systematise and parallelise operational processes in order to save time and money.
Benefit of this notation is its simplicity and readabilty.
An EPC diagram is a multifaceted method of analyzing business processes. It makes sure that all the elements are indicated and business owners or managers are able to point to duplication or inefficiencies of tasks and inputs. Different shapes represent the elements of the flowchart.
They are sorted into these groups:
- PROCESS & LOGIC
Events are passive elements in event-driven process chains. They describe under what circumstances a function or a process works or which state a function or a process results in. Examples of events are 'requirement captured', 'material in stock', etc. In the EPC graph an event is represented as hexagon. In general, an EPC diagram must start with an event and end with an event.
Functions are active elements in an EPC. They model the tasks or activities within the company. Functions describe transformations from an initial state to a resulting state. If 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 a hierarchical function. Examples of functions are 'capture requirement', 'check material in stock', etc. In the event-driven process chain graph a function is represented as rounded rectangle.
Interfaces serve as connection Element to human or machine interaction or to sub-processes. They show the connection from or to other processes. The process path is represented as a compound symbol composed of a function symbol superimposed upon an event symbol.
Decisions: 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.
AND: 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 Event-driven Process Chain 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.
OR / XOR: 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.
Organization units determine which organization within the structure of an enterprise is responsible for a specific function.
Organization unit assignments show the connection between an organization unit and the function it is responsible for.
Process owner is responsible for a function (i.e. a booking clerk is responsible for booking journeys). The process owner is usually part of an organization unit (i.e. a booking clerk belongs to the booking department).
Information, material or resource objects portray elements of the real world, for example IT Systems, Guidelines, Check-Lists, Databases etc. Information objects can both serve as input and as output to functions.
The risk object is used to describe potential risks or dangerous situation. It is used to document any potential harms connected to a process step.
Controls help to link checks and balances and ongoing monitoring tasks to the process.