Activities

Introduction

In BPMN 2.0, an Activity represents a task or a set of tasks that are performed within a business process. Activities are the building blocks of a process model and describe the specific actions that need to be completed to move the process forward. They are represented as rectangles with rounded corners in a BPMN diagram.

Types of Activities

  1. Task:

    • A single, atomic activity representing a basic unit of work that needs to be performed.
    • Example: “Send Invoice” or “Approve Request.”
  2. Sub-Process:

    • A compound activity that contains a set of other tasks or processes within it.
    • Can be expanded (showing all inner tasks) or collapsed (appearing as a single activity).
    • Example: A hiring process could be a sub-process within the larger employee onboarding process.
  3. Call Activity:

    • A reusable process or sub-process that is called (invoked) by another process.
    • Example: A shared “Customer Verification” process used across multiple workflows.

Specialized Types of Tasks

Tasks can be categorized based on the participants involved and the objects utilized, consumed, or generated throughout the process.

Generic Task

BPMN Task

Generic tasks serve as a starting point for your process model. They can be quickly implemented and later refined into specific subtypes as needed.

Manual Task

BPMN Manual Task

Manual tasks are performed by individuals and do not directly interact with the process engine. Examples include organizing documents into folders, resolving invoice discrepancies via phone calls, and engaging with customers face-to-face at the service counter.

User Task

BPMN User Task

User tasks are performed by individuals and are specifically assigned by a process engine. This engine allocates tasks directly into each user’s task queue. Upon completion, the engine requires acknowledgment, often through data entry or clicking a button. User tasks are integral to Human Workflow Management systems.

Common examples include reviewing an invoice, approving a vacation request, and handling a support ticket.

Receive Task

BPMN Receive Task

Receive tasks model the receipt of a message as a distinct task within the process flow. This task type serves as an alternative to the message-catching event, represented in BPMN 2.0 by the symbol of an empty envelope.

Receive Task (Instantiating)

BPMN Receive Task (Instantiating)

When a receive task is designated to initiate a process, effectively substituting the message start event, this is indicated by a small event icon located in the top left corner.

Send Task

BPMN Send Task

Send tasks are technical tasks executed by the process engine, primarily used for invoking web services asynchronously via message queues.

Script Task

BPMN Script Task

Script tasks are executed directly within the process engine and must be written in a language that the engine can interpret.

Service Task

BPMN Service Task

Service tasks refer to operations performed by software applications, automatically executed as part of the process workflow. Typically, BPMN presupposes these functions are delivered via web services, although alternative implementations are possible. These tasks play a crucial role in process-oriented integration, aligning closely with the principles of Service-Oriented Architecture (SOA).

Business Rule Task

BPMN Business Rule Task

BPMN 2.0 introduces the business rule task, specifically designed for applying business rules within a process.

Key Characteristics

  • Sequence Flows: Activities are connected by arrows (sequence flows) that determine the order in which tasks are executed.
  • Loop and Multi-instance: Some activities can be repeated (looped) or performed by multiple participants simultaneously (multi-instance).

Example

  • A “Review Application” activity could represent a user task where a manager reviews an application. This task could be part of a larger sub-process called “Application Processing.”

Activities are central to defining the specific steps in a process and how work is done to achieve the desired outcome in a BPMN model. They can be simple tasks or complex sub-processes that contain multiple activities and flow conditions.

Next Up..

Additional activity types

Additional types of activities include collapsed sub-processes, multi-instance tasks, and ad-hoc sub-tasks.