Getting started with business process diagrams

Business process diagramming is a flexible requirements-definition technique. When you start, it is best to use the most simple process representation. Begin with a basic structure and the clearly identifiable elements in the process. As your diagram develops, add detail.

Your representation will incorporate process elements whose behavior is designed in accordance with the Business Process Modeling Notation (BPMN) guidelines. These elements, which are described in detail in Business process elements, help you to recognize the activities in the process and to organize your diagram.

Choosing a finite process

Begin with a clear objective. The business process diagram should represent a finite, clearly bounded process, even if it contains subprocesses. A complex process, such as Processing a customer order can have many participants and many subprocesses; a simpler process might be Look up customer information. Consider these guidelines for diagramming:
  • For a complex process, plan to create a summary only. Represent subprocesses with a single subprocess element; avoid adding too much detail at this point.
  • For smaller, simpler processes, create detail as needed, but be sure to limit the detail to those activities that are performed completely within the process.

Using pools and lanes

Two types of process are supported: simple and business-to-business processes.
  • A simple process represents the internal processes within one organizational unit or business entity. The process does not include swimlane pools; however, it can include multiple lanes to represent roles or internal participants in the process.
  • A business-to-business process represents global processes that span multiple organizational units or business entities. This process is represented by multiple swimlane pools. Message flows connect the activities across the pools

If your process involves multiple participants (such as different organizations, customers, or systems), create a business-to-business process and separate the participants in different pools. Use separate pools to represent participants who control their own processes. For example, a customer is one pool and a seller is another; each has separate processes, yet they must communicate outside their own organizations (across pools) when an order is placed.

Within a simple process or a single pool in a business-to-business process, there might be multiple roles, each of which is represented by a separate lane in the diagram. For example, customer service, billing, and shipping each have their own lane within one pool.

Identifying activities

Identify the tasks and subprocesses that are included in the process. These activities are descriptions of work. The task is a finite (atomic) activity that cannot be subdivided into smaller activities. A subprocess represents a collection of tasks that are treated as one activity in this process diagram. Place each activity in the pool or lane that represents the participant, role, or system that performs the activity.

Activities can share data objects, which are containers for data. Connecting activities to data objects generates data associations, which are used to place data into or retrieve data from a data object.

Positioning the start, intermediate, and end events

Place the start and end events in the correct pool and lane, relative to the initial and final activities in the process. Add intermediate events that affect activities within the process.

Adding flow connectors and gateways

As you add flow connectors to the diagram, the tool assigns a connector that is appropriate for the context. Sequence flow connectors connect activities in a simple process or within a pool in a business-to-business process. Message flow connectors connect activities across two pools. As you add a connector between two elements, the business process diagram editor determines which type of connector to use based on the selected source and target. Associations connect text annotations with activities and events. A gateway controls the divergence and convergence of sequence flow; the gateway can determine branching, forking, merging, and joining of paths.

Adding groups and annotations

Add a text annotation to clarify a specific activity or event. Use a connector to associate the annotation with other elements.