Skip to content

BPMN 2.0

Overview

Business Process Model and Notation (BPMN) is a graphical notation for business process modeling. BPMN 2.0 is its latest version, published by the Object Management Group (OMG), aiming to provide a standardized method for designing, analyzing, executing, and monitoring business processes. Through BPMN 2.0, business personnel and technical personnel can communicate and collaborate using a unified language, thereby improving the efficiency and transparency of business processes.

BPMN 2.0 Basic Elements

Activities

  • Task: A task is the most basic work unit in BPMN, representing a single work step. Tasks can be further classified into:

    • User Task: A task that needs to be executed manually, usually completed by a user through a user interface.
    • Service Task: A task automatically executed by a computer system, such as calling a Web service or executing database operations.
    • Script Task: A task that executes a predefined script, usually used for automated processing.
    • Manual Task: A manual task that does not require system support, such as signing or checking.
    • Business Rule Task: A task that executes a business rule engine, usually used for decision support.
    • Send Task: A task that sends messages, used to notify other processes or systems.
    • Receive Task: A task that waits for messages, usually used to synchronize different processes or systems.
  • Sub-Process: A sub-process is a composite activity containing multiple tasks, which can be displayed collapsed or expanded. Sub-processes can be further classified into:

    • Embedded Sub-Process: A sub-process embedded in the parent process, which cannot be executed independently.
    • Call Activity: Refers to an externally defined sub-process, which can be reused in multiple processes.
  • Transaction: A transaction is a composite activity that needs to ensure consistency, usually involving multi-step operations that need to either all succeed or all fail.

Events

  • Start Event: Indicates the start of a process. Event types that can trigger process startup include:

    • Message Event: Triggered when a message is received, usually used for interaction with external systems or processes.
    • Timer Event: Triggered at a specific time or period, such as daily scheduled tasks.
    • Conditional Event: Triggered when conditions are met, such as triggering a replenishment process when inventory is below a certain threshold.
    • Signal Event: Triggered when a signal is received, usually used for broadcasting notifications to multiple recipients.
    • Error Event: Triggered when an error occurs, used for exception handling.
  • Intermediate Event: Indicates an intermediate event in the process. It can be placed on a sequence flow or inside an activity, with common types including:

    • Catch Event: Waits for a specific event to occur, such as waiting for a message or signal.
    • Throw Event: Triggers a specific event, such as sending a message or signal.
  • End Event: Indicates the end of a process. Event types that can terminate a process include:

    • Message End Event: Ends after sending a message, used to notify other processes or systems.
    • Error End Event: Ends after an error occurs, used for exception handling.
    • Signal End Event: Ends after sending a signal, used for broadcasting notifications to multiple recipients.

Gateways

  • Parallel Gateway: Used to create parallel branches, all branches execute simultaneously, often used in scenarios that require parallel processing.
  • Exclusive Gateway: Used to select one branch based on conditions, the branch that meets the conditions is executed, often used in decision points.
  • Inclusive Gateway: Used to select one or more branches based on conditions, branches that meet the conditions are executed, often used in scenarios with one or more selections.
  • Event-based Gateway: Selects branches based on events, executes the corresponding branch after waiting for an event to occur, often used in event-driven processes.
  • Complex Gateway: Used to handle complex branch logic, usually combined with multiple conditions or events.

Data

  • Data Object: Represents data used or generated in the process, such as documents, forms, etc.
  • Data Store: Represents persistent data storage, such as databases, file systems, etc.
  • Data Input: Represents the input data of the process, usually defined in start events or tasks.
  • Data Output: Represents the output data of the process, usually defined in end events or tasks.

Connecting Objects

  • Sequence Flow: Represents the order between activities, usually represented by a solid line with an arrow pointing to the next activity.
  • Message Flow: Represents message passing between different participants, usually represented by a dashed line with an arrow pointing to the message recipient.
  • Association: Used to connect data objects and activities, representing the input or output relationship of data.

BPMN 2.0 Extension Elements

  • Swimlane: Used to divide different participants or roles, helping to clarify the responsibility for tasks.
  • Pool: Represents a participant or system, the entire pool represents an independent business process, usually used for cross-organizational process modeling.
  • Lane: Represents a role or department within a pool, each lane represents tasks for a specific role or department, helping to refine process responsibilities.

BPMN 2.0 Execution Semantics

BPMN 2.0 not only defines graphical symbols but also defines the execution semantics of these symbols:

  • Process Instance: Each process execution creates a process instance, representing a specific business operation.
  • Task Execution: Tasks can be manual tasks, user tasks, service tasks, etc., each task has a different execution method, such as manual tasks requiring manual completion, and service tasks being automatically executed by the system.
  • Event Handling: Events can trigger the start, pause, continue, or end of a process, such as a start event triggering process startup and an end event terminating the process.
  • Gateway Control: Gateways are used to control the branching and merging of processes, determining the execution path of branches through conditions or events, such as an exclusive gateway selecting a branch based on conditions, and a parallel gateway executing multiple branches simultaneously.

BPMN 2.0 Application Scenarios

BPMN 2.0 can be applied to various business process modeling scenarios:

  • Business Process Automation: Process automation through BPMN 2.0 models, reducing human intervention and improving efficiency, commonly used in Enterprise Resource Planning (ERP), Customer Relationship Management (CRM) and other systems.
  • Process Analysis and Optimization: Process analysis and optimization through BPMN 2.0 models, discovering bottlenecks and improvement points, helping enterprises improve the efficiency and quality of business processes.
  • Cross-Organizational Process Collaboration: Cross-organizational process collaboration through BPMN 2.0 models, ensuring seamless connection of processes between different organizations and improving collaboration efficiency, commonly used in supply chain management, partner relationship management and other scenarios.

Reference link https://camunda.com/bpmn/reference/