page_title: Event-driven process chain
section_title: Elements
hierarchical_section_title: Event-driven process chain / Elements
caption_attribution_description: EPC XOR merge
context_page_description: An event-driven process chain is a type of flow chart for business process modeling. EPC can be used to configure enterprise resource planning execution, and for business process improvement. It can be used to control an autonomous workflow instance in work sharing.
  The event-driven process chain method was developed within the framework of Architecture of Integrated Information Systems by August-Wilhelm Scheer at the Institut für Wirtschaftsinformatik, Universität des Saarlandes in the early 1990s.
context_section_description: In the following the elements used in event-driven process chain diagram will be described:
  Event
  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.
  Function
  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.
  Process owner
  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). It is represented as a square with a vertical line.
  Organization unit
  Organization units determine which organization within the structure of an enterprise is responsible for a specific function. Examples are "sales department", "procurement department", etc. It is represented as an ellipse with a vertical line.
  Information, material, or resource object
  In the event-driven process chain, 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.
  Logical connector
  In the event-driven process chain 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.
  Logical relationships
  There are three kinds of logical relationships defined in event-driven process chains:
  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 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 : An 'OR' relationship corresponds to activating one or more paths among control flows. An opening 'OR' connector may have one incoming control flow an
caption: If either events E1 or E2 occur, function F1 starts
exif: {}