Introduction to Events

Events represent milestones in a process and generally do not have associated durations or resources. Events start, end, delay, or interrupt process flows. Although there are dozens of event variants in BPMN, this lesson will introduce the basics.

Event Types

There are several types of events, each represented by a circle.

Primary event types
  • start event triggers a process. A process diagram may have multiple start events. Only the sequence flow originating from the appropriate start event receives a token.
  • A process diagram can have multiple end events. End events consume tokens. The process instance is completed when all tokens have been consumed.
  • Intermediate events, as the name suggests, influence the flow between the start and end events.

Catching and Throwing Events

Events can be categorized as catching or throwing:

  • Catching events are used to start an activity. When a token reaches a catching event, the token waits until the event occurs before proceeding.
  • Throwing events are used to signal the completion of an activity. When a token reaches a throwing event, the event is executed, and the flow immediately continues.

Catching Events

Catching events can be triggered in various ways. Among the most common are:

Typical catching events
  • Message events are triggered when a message is received from an external actor (i.e., from a different pool).
  • Timer events are triggered at specific times (e.g., 12:00 PM on December 24th), at recurring intervals (e.g., every Saturday), or at relative times (e.g., after 5 days).
  • Conditional events are triggered when specified criteria are fulfilled (e.g., a manager’s approval).

Throwing Events

Common forms of throwing events include:

Typical throwing events
  • Message events send a message to an external actor.
  • Escalation events are used to initiate a process for handling problems that don’t result in cancellation.
  • An error event is used to handle errors during the execution of a specific activity or at a specific point in the process flow.
  • Terminate events are end events that immediately cancel all activities, switch off all active tokens, and stop the entire process.