en_US

BPMN 2.0 Beginner’s Guide

BPMN—Business Process Model and Notation—is a standard visual language for describing how business processes work. It helps business users, analysts, developers, and managers understand the same process using consistent symbols.

The image summarizes five main BPMN areas:

BPMN 2.0 Beginner’s Guide

  1. Swimlanes – who is responsible

  2. Flow elements – what happens in the process

  3. Connecting objects – how elements relate

  4. Data – information used or produced

  5. Artifacts – additional explanatory information


1. What BPMN Is Used For

BPMN can describe processes such as:

  • Processing a customer order

  • Approving an employee vacation request

  • Handling an insurance claim

  • Onboarding a new employee

  • Shipping products from a warehouse

  • Resolving a customer complaint

  • Approving an invoice

A BPMN diagram answers questions such as:

  • Who performs each activity?

  • What happens first?

  • What decisions are made?

  • Which activities happen in parallel?

  • What information is required?

  • What happens when an error occurs?

  • When does the process end?

A simple process might look like this:

Customer places order
        ↓
Sales checks order
        ↓
Warehouse prepares shipment
        ↓
Order is shipped
        ↓
Customer receives confirmation

BPMN represents this process visually using events, tasks, gateways, flows, pools, and lanes.


2. BPMN Diagram Structure

A BPMN process usually contains four basic parts:

Start Event → Activity → Decision → Activity → End Event

For example:

Order received
      ↓
Check inventory
      ↓
Is product available?
   ↙              ↘
 Yes              No
  ↓                ↓
Pack order     Notify customer
  ↓                ↓
Ship order     Cancel order
   ↘              ↙
       End

The main elements are described below.


3. Swimlanes: Pools and Lanes

Swimlanes organize responsibility. They show which participant, department, role, or system performs each activity.

Pools

pool represents a major participant in a process.

A participant might be:

  • A company

  • A customer

  • A supplier

  • A bank

  • A government agency

  • An external software system

Example:

Pool: Online Retail Company

A pool can contain one or more lanes.

A pool may also be shown as a collapsed box when the internal process is not being modeled.

Lanes

lane is a subdivision inside a pool. It normally represents:

  • A department

  • A job role

  • A team

  • A system

  • A business function

Example:

Pool: Online Retail Company
 ├── Sales Department
 ├── Warehouse
 └── Finance Department

A process might be organized like this:

Lane Responsibility
Customer Places the order and receives notifications
Sales Department Reviews and confirms the order
Warehouse Picks, packs, and ships products
Finance Department Processes payment
Delivery Partner Delivers the package

Example with lanes

Customer          | Place order ─────────────── Receive confirmation
                  |
Sales Department  | Receive order → Check order → Confirm order
                  |
Warehouse         |                         Pick items → Pack → Ship
                  |
Finance           | Receive payment request → Approve payment

The position of an activity in a lane indicates who is responsible for it.

Pool versus lane

Element Meaning Typical example
Pool Major participant or organization Customer, Supplier, Bank
Lane Role, department, or system within a participant Sales, Warehouse, Finance

Beginner rule

Use a pool when the participant is organizationally or operationally separate. Use a lane when the participant is a role or group inside that pool.


4. Flow Elements

Flow elements describe what happens in the process. The three main types are:

  1. Events

  2. Activities

  3. Gateways


4.1 Events

An event represents something that happens during a process. Events do not usually describe work being performed; instead, they indicate that something starts, interrupts, or ends the process.

Events are represented by circles.

Start event

A start event shows where the process begins.

Symbol: thin-lined circle

Examples:

  • Customer submits an order

  • A message is received

  • A timer reaches a scheduled date

  • An employee submits a request

Example:

○ Order received

A start event should normally have outgoing flow but no incoming sequence flow.

Intermediate event

An intermediate event occurs between the start and end of a process.

Symbol: double-lined circle

It can represent:

  • Waiting for a message

  • Waiting for a timer

  • Catching an error

  • Sending a notification

  • Escalating a problem

Example:

Start → Review order → ◉ Wait for payment → Ship order

An intermediate event can either:

  • Catch something, such as waiting for an incoming message

  • Throw something, such as sending a message or raising an error

End event

An end event shows where a process path finishes.

Symbol: thick-lined circle

Examples:

  • Order completed

  • Request rejected

  • Payment failed

  • Case closed

Example:

Ship order → ● Order completed

An end event normally has incoming sequence flow but no outgoing sequence flow.


4.2 Activities

An activity represents work performed in the process. Activities are shown as rounded rectangles.

Examples:

  • Review application

  • Approve payment

  • Pick products

  • Send invoice

  • Update customer record

Activities should normally be named using a verb and an object:

  • Review application

  • Validate address

  • Approve request

  • Send confirmation

Avoid vague names such as:

  • Processing

  • Work

  • Handle issue

  • Step 1

Task

task is a single unit of work that is not broken down further in the current diagram.

Example:

[Review customer order]

A task can be performed manually, automatically, or by a user working with a system.

Common BPMN task types include:

Task type Meaning Example
User task A person performs work using a system Approve loan application
Manual task A person performs work without a system Inspect package
Service task A system or automated service performs work Calculate shipping cost
Send task Sends a message Send order confirmation
Receive task Waits for a message Receive supplier response
Script task Executes a script or program Calculate total
Business rule task Applies business rules Determine discount

For beginners, a normal generic task is often sufficient unless the exact implementation matters.

Sub-process

sub-process is a group of activities treated as one larger activity.

Example:

[Process customer return]

Inside the sub-process might be:

Receive return request
      ↓
Check return eligibility
      ↓
Inspect returned item
      ↓
Issue refund

Use a sub-process when:

  • The group of activities is logically related

  • The diagram is becoming too large

  • You want to hide detail temporarily

  • The same group of steps is reused

  • Different people need different levels of detail

A sub-process is shown as a rounded rectangle with a small plus sign when collapsed.


4.3 Gateways

A gateway controls how the process branches, merges, or makes decisions. Gateways are represented by diamonds.

The symbol inside the diamond indicates the gateway type.

Exclusive gateway: XOR

An exclusive gateway selects exactly one path.

Example:

                 ┌── Yes → Approve request
Check request ─◇─┤
                 └── No  → Reject request

Use an exclusive gateway when only one condition can be true.

Example question:

Is the order value greater than $1,000?

Possible paths:

  • Yes: Require manager approval

  • No: Continue automatically

Typical notation:

◇ Is payment approved?

Only one outgoing path should be followed.

Parallel gateway: AND

A parallel gateway activates multiple paths at the same time.

Example:

                 ┌── Send invoice
Order confirmed ─◇
                 └── Prepare shipment

Both activities occur.

A parallel gateway can also synchronize parallel paths:

Send invoice ────┐
                 ◇── Ship order
Prepare shipment ┘

The process continues only after both branches are complete.

Use a parallel gateway when activities are independent and can happen concurrently.

Inclusive gateway: OR

An inclusive gateway activates one or more paths depending on conditions.

Example:

 

 

Customer type?
   ├── Business customer → Create business account
   ├── International     → Calculate customs fee
   └── Premium customer  → Apply premium discount

One, two, or all three paths might be selected.

Use an inclusive gateway when multiple conditions may be true at the same time.

Event-based gateway

An event-based gateway chooses a path based on whichever event happens first.

Example:

 

 

Send quote
    ↓
◇ Wait for event
   ├── Customer accepts → Create order
   ├── Customer rejects → Close request
   └── Timer expires    → Send reminder

This is useful when the process waits for competing events, such as:

  • A customer response

  • A timeout

  • A message from another system

Gateway comparison

Gateway Number of paths selected Main purpose
Exclusive Exactly one Choose between alternatives
Parallel All applicable paths Run work at the same time
Inclusive One or more Follow every condition that applies
Event-based First event to occur React to whichever event happens first

Gateway naming

A gateway can be written as a question:

  • Is payment approved?

  • Is the customer eligible?

  • Are all documents complete?

  • Has the deadline passed?

The outgoing flows should then use matching conditions:

  • Yes / No

  • Approved / Rejected

  • Complete / Incomplete


5. Connecting Objects

Connecting objects show how BPMN elements relate to one another.


5.1 Sequence flow

sequence flow shows the order in which activities, events, and gateways occur.

It is represented by a solid line with a solid arrowhead.

Start → Review request → Approve request → End

Sequence flow is normally used within the same pool.

Example:

○ Start → [Validate order] → ◇ Payment approved?

Rules for sequence flow

  • Use arrows to show direction.

  • Keep the direction consistent, usually left to right or top to bottom.

  • Label conditional flows when necessary.

  • Avoid crossing lines.

  • Do not use sequence flow to connect separate pools.


5.2 Message flow

message flow shows communication between separate participants or pools.

It is represented by a dashed line with an open arrowhead.

Example:

Customer Pool       - - - message order - - -> Company Pool
Company Pool        - - - confirmation - - -> Customer Pool

Message flow can represent:

  • Sending an order

  • Receiving an invoice

  • Sending a payment request

  • Receiving a delivery update

  • Exchanging information with an external system

Sequence flow versus message flow

Connection Used between Meaning
Sequence flow Elements in the same pool Order of work
Message flow Separate pools or participants Communication between participants

A common beginner mistake is using sequence flow across two pools. Use message flow instead.


5.3 Association

An association links additional information to a BPMN element.

It is shown as a dotted line.

Use it to connect:

  • A text annotation to an activity

  • A data object to a task

  • A group to related elements

Example:

[Approve invoice] ······· “Manager approval required”

An association does not control the order of the process. It simply adds context.


5.4 Data association

data association shows how data enters or leaves an activity.

It can show:

  • An input document being used

  • An output document being produced

  • Information being updated

  • Data being stored

Example:

[Create invoice] ─ ─ ─ → Invoice document

The line is usually dotted with an open arrowhead.


6. Data Elements

BPMN data elements show information used or created by the process.

 

6.1 Data object

data object represents information used or produced during a process.

Examples:

  • Customer order

  • Invoice

  • Application form

  • Shipping label

  • Approval document

  • Payment receipt

Example:

[Review order] ─ ─ ─ → Order document

A data object does not necessarily mean a physical paper document. It may also represent a digital file or business record.

6.2 Data input

data input represents information entering the process.

Examples:

  • Customer application

  • Supplier quotation

  • New order

  • Uploaded document

Example:

Customer application → Process application

6.3 Data output

data output represents information produced by the process.

Examples:

  • Approved application

  • Shipping confirmation

  • Invoice

  • Completion report

6.4 Data store

data store represents persistent information that remains available beyond one process instance.

Examples:

  • Customer database

  • Inventory system

  • Employee records

  • Document repository

  • Accounting system

Example:

[Update inventory] ─ ─ ─ ↔ Inventory database

A data store is useful when the process reads from or writes to a long-term information repository.

Data element comparison

Element Meaning Example
Data object Information used or produced during a process Order form
Data input Information entering the process Customer application
Data output Information leaving the process Approval notice
Data store Persistent information repository Customer database

7. Artifacts

Artifacts add information without changing the process flow.

The image shows two common artifacts: groups and text annotations.


7.1 Group

A group visually surrounds related elements.

A group is shown using a dashed rounded rectangle.

Use a group to:

  • Highlight a phase of the process

  • Organize related activities

  • Mark compliance-related steps

  • Identify optional work

  • Explain process boundaries

Example:

┌ - - - - - Customer verification - - - - - ┐
  [Check identity] → [Validate address]
└ - - - - - - - - - - - - - - - - - - - - -┘

A group does not control execution. It is only a visual aid.

7.2 Text annotation

A text annotation adds a comment or explanation.

Example:

[Approve refund] ····· “Refunds above $500 require manager approval.”

Annotations are helpful for:

  • Business rules

  • Exceptions

  • Policies

  • Assumptions

  • Explanations of unusual behavior

  • Notes for readers

Do not use text annotations as a replacement for actual BPMN logic. If a rule changes the process path, model it with a gateway or event.


8. Complete Example: Online Order Process

The following example combines pools, lanes, activities, gateways, data, and messages.

Scenario

A customer places an online order. The company checks inventory and payment. If the product is available and payment is approved, the warehouse ships the order. Otherwise, the customer is notified.

Customer
  ○ Place order
        |
        | Order message
        v

Online Store
  Sales Department
  ○ Receive order
        ↓
  [Check inventory]
        ↓
  ◇ Product available?
     ↙              ↘
   No                Yes
   ↓                  ↓
[Notify customer]  [Request payment]
   ↓                  ↓
  ● Order closed   ◇ Payment approved?
                     ↙              ↘
                   No                Yes
                   ↓                  ↓
             [Notify customer]   Warehouse
                   ↓             [Pick items]
              ● Order closed          ↓
                                  [Pack order]
                                       ↓
                                  [Ship order]
                                       ↓
                                  [Send confirmation]
                                       ↓
                                      ● Completed

Data used in the process

Customer order → Receive order
Inventory database ↔ Check inventory
Payment request → Request payment
Shipping label → Ship order
Order confirmation → Send confirmation

Communication between participants

  • Customer sends an order to the company.

  • Company sends a payment request to the payment provider.

  • Payment provider sends an approval or rejection message.

  • Company sends a confirmation to the customer.

  • Warehouse receives a shipment request.


9. Example: Employee Vacation Request

Business rule

An employee submits a vacation request. The manager approves or rejects it. If approved, the HR system updates the employee’s leave balance.

Employee
  ○ Submit vacation request
        ↓
Manager
  [Review request]
        ↓
  ◇ Approved?
    ↙       ↘
  No         Yes
  ↓           ↓
[Send       [Notify employee]
 rejection]       ↓
  ↓         HR Department
  ● End      [Update leave balance]
                    ↓
               [Record approval]
                    ↓
                   ● End

Possible data elements

  • Vacation request

  • Employee leave balance

  • Approval notification

  • HR record

Possible annotation

“Requests longer than 10 working days require department-head approval.”

If the rule creates another decision path, it should be modeled with a gateway rather than only written as an annotation.


10. Example: Parallel Activities

Suppose an approved loan application requires both a credit check and an identity check. These can happen at the same time.

[Receive loan application]
          ↓
       ◇ AND
       ↙   ↘
[Credit check] [Identity check]
       ↘   ↙
       ◇ AND
          ↓
 [Make lending decision]
          ↓
         ● End

The first parallel gateway splits the process. The second waits until both activities are complete.

Use this pattern when:

  • Activities are independent

  • Both activities are required

  • Performing them simultaneously saves time


11. Example: Waiting for Events

A supplier sends a quotation, but the company may also cancel the request if the response takes too long.

[Send quotation request]
          ↓
  ◇ Event-based gateway
      ↙          ↘
[Receive quote]  [Timer expires]
      ↓              ↓
[Evaluate quote]  [Send reminder]
      ↓              ↓
     ● End          ● End

The path depends on which event happens first.


12. How to Create a BPMN Diagram

Follow this process when modeling a new business process.

Step 1: Define the process scope

Decide where the process begins and ends.

Example:

  • Start: Customer submits an order

  • End: Order is shipped or canceled

Avoid modeling the entire organization in one diagram.

Step 2: Identify participants

List the people, departments, organizations, and systems involved.

Example:

  • Customer

  • Sales department

  • Warehouse

  • Payment provider

Decide which should be pools and which should be lanes.

Step 3: Identify the start event

Ask:

What triggers this process?

Possible answers:

  • A request is submitted

  • A message arrives

  • A scheduled time occurs

  • A condition becomes true

Step 4: List the main activities

Write the work in plain language first.

Example:

  1. Receive order

  2. Check inventory

  3. Request payment

  4. Pick products

  5. Pack order

  6. Ship order

  7. Send confirmation

Step 5: Add decisions

Look for questions that change what happens next.

Examples:

  • Is the product available?

  • Is payment approved?

  • Is the request complete?

  • Has the deadline passed?

Represent these decisions with gateways.

Step 6: Add the end events

A process may have multiple endings.

Examples:

  • Order completed

  • Order canceled

  • Request rejected

  • Payment failed

Step 7: Add sequence flows

Connect the process from start to finish. Keep the direction easy to follow.

Step 8: Add messages

Show communication between separate pools using message flows.

Step 9: Add data and annotations

Add documents, databases, rules, and notes only where they clarify the process.

Step 10: Review the diagram

Check whether:

  • Every process path starts correctly

  • Every path reaches an end

  • Gateways are logically paired

  • Responsibilities are clear

  • Messages connect separate participants

  • Activities are named consistently

  • The diagram is readable


13. Naming Conventions

Good names make BPMN diagrams much easier to understand.

Events

Use a noun or event phrase:

  • Order received

  • Payment approved

  • Deadline reached

  • Customer cancels request

Tasks

Use a verb followed by an object:

  • Validate application

  • Check inventory

  • Approve payment

  • Send notification

Gateways

Use a question:

  • Is the application complete?

  • Is payment approved?

  • Are products available?

End events

Use a result:

  • Order completed

  • Request rejected

  • Payment failed

  • Case closed

Avoid vague labels such as:

  • Process order

  • Handle request

  • Do checking

  • Action required

Prefer more precise names:

  • Validate order details

  • Review customer request

  • Check payment status

  • Send approval notification


14. Common Beginner Mistakes

Using the wrong flow type

Incorrect:

Sequence flow between two separate pools

Correct:

Message flow between separate pools

Use sequence flow for the order of activities within a participant. Use message flow for communication between participants.

Treating every department as a separate pool

Departments within the same organization are usually better represented as lanes within one pool. Separate pools are more suitable for independent participants.

Using gateways for simple sequential work

Do not add a gateway when there is no branching or merging.

Unnecessary:

Start → ◇ → Review form → ◇ → End

Better:

Start → Review form → End

Forgetting to merge branches

If a gateway splits the process, its branches may need to be merged later.

For example, after either approving or rejecting a request, the process might continue to a common notification step.

Using text instead of process logic

Writing “If payment fails, notify the customer” as a note does not model the behavior. Use an exclusive gateway:

◇ Payment approved?
   ├── Yes → Continue order
   └── No  → Notify customer

Overloading the diagram

A diagram with too many details becomes difficult to read. Use:

  • Sub-processes

  • Separate diagrams

  • Groups

  • More specific views for different audiences

Mixing levels of detail

Avoid placing a high-level activity such as “Process order” beside detailed steps such as “Print label” and “Seal package” unless the relationship is clear.

Choose one level of detail for the diagram or use a sub-process.

Missing end events

A process should normally make its possible outcomes clear. Include end events for successful, rejected, canceled, or failed paths where appropriate.


15. BPMN Modeling Best Practices

  • Start with the process objective and scope.

  • Use a clear left-to-right or top-to-bottom direction.

  • Use one start event unless multiple triggers are genuinely required.

  • Give every important path a clear outcome.

  • Keep tasks at a similar level of detail.

  • Use lanes to clarify responsibility.

  • Label outgoing gateway flows.

  • Use message flows only for inter-participant communication.

  • Avoid crossing connectors where possible.

  • Prefer meaningful names over technical names.

  • Use data objects only when the information matters.

  • Use annotations to explain, not to replace, process logic.

  • Break large diagrams into sub-processes.

  • Validate the model with the people who perform the actual work.


16. Quick BPMN Cheat Sheet

Symbol or concept Meaning
Thin circle Start event
Double circle Intermediate event
Thick circle End event
Rounded rectangle Activity or task
Rounded rectangle with plus sign Collapsed sub-process
Diamond with X Exclusive gateway
Diamond with plus sign Parallel gateway
Diamond with circle Inclusive gateway
Diamond with event markers Event-based gateway
Solid arrow Sequence flow
Dashed arrow Message flow
Dotted line Association
Document shape Data object
Database cylinder Data store
Dashed grouping box Group
Text box Text annotation
Large outer container Pool
Subdivision inside a pool Lane

17. A Simple BPMN Modeling Checklist

Before finalizing a diagram, ask:

Process flow

  • Is there a clear start?

  • Is the normal process easy to follow?

  • Does every path eventually finish?

  • Are decisions represented by gateways?

Responsibilities

  • Is every activity assigned to a participant or lane?

  • Are pools used for separate participants?

  • Are lanes used for internal roles or departments?

Connections

  • Are sequence flows used within a pool?

  • Are message flows used between pools?

  • Are gateway branches labeled?

Information

  • Are important documents shown?

  • Are persistent systems represented as data stores?

  • Are annotations used only for clarification?

Readability

  • Is the diagram too large?

  • Are the activities consistently named?

  • Are connector lines easy to follow?

  • Could a sub-process simplify the diagram?

The central idea is simple: events describe what happens, activities describe the work, gateways control decisions or parallel paths, swimlanes show responsibility, connections show relationships, and data elements show information. Together, these elements provide a clear picture of how a business process begins, progresses, branches, communicates, and ends.

References

  1. Comprehensive Guide to BPMN, Visual Paradigm Tooling, AI, and Ecosystem: Official blog post outlining the four pillars of the VP AI ecosystem with practical BPMN examples like Employee Onboarding and Order Fulfillment .
  2. Mastering Business Process Modeling: A Complete Guide to BPMN and AI-Powered Diagram Generation: Official guide detailing how to use the AI Business Process Diagram generator, with step-by-step instructions and feature comparisons .
  3. From Text to Process Flow: My Hands-On Review of Visual Paradigm’s AI-Powered BPMN Generator: Independent review testing the generator across real-world scenarios (e-commerce, IT support, banking) from a business analyst perspective .
  4. AI BPMN Diagram Generator: Professional BPD Tool: Official product page explaining the text-to-diagram feature, how to access it in VP Desktop, and key benefits like standard compliance .
  5. BPMN、Visual Paradigm 工具、人工智能与生态系统全面指南: Chinese version of the comprehensive guide, covering BPMN fundamentals and AI-driven generation case studies .
  6. From Text to Process Flow: A Hands-On Review of Visual Paradigm’s AI-Powered BPMN Generator: Detailed case study on a hardware retailer’s shipment process, demonstrating how AI handles gateways, parallel execution, and swimlane logic .
  7. AI BPMN图生成器:专业BPD工具: Chinese product guide detailing the AI generator’s capabilities, including automatic pool and lane inclusion for cross-functional clarity .
  8. 我的亲身体验:利用 Visual Paradigm 的 AI 驱动 BPMN 改变工作流程文档: First-hand review of the AI generator’s performance on employee onboarding, customer support, and loan approval scenarios .
  9. BPMN 2.0 商业流程建模新手实战指南:运用 Visual Paradigm 与 AI 轻松打造专业流程图: Practical tutorial with prompt writing strategies and advanced optimization techniques using the AI Chatbot for conversational refinement .
  10. BPMN 完整实战教程:Visual Paradigm 体验、AI 功能与生态系统深度指南: Series of articles covering the AI-powered BPMN generator launch, with deep dives into ecosystem integration and practical examples .