How to model Data in BPMN?

Filip Stachecki
27-02-2024

11 min

Data handling in Business Process Model and Notation (BPMN) is fundamental to effective business processes modeling, as it allows you to represent how data is created, modified and used in various activities. Here’s an overview of the key BPMN elements commonly used to manage data processing.

Key BPMN elements for Data processing

Data Objects

  • Data Objects represent specific pieces of information that are used during a process. 
  • They can be physical items (like documents) or informational data (such as order numbers) and are depicted as a page with a folded corner in BPMN diagrams.

Data Associations

  • These illustrate the connections between activities and Data Objects, indicating how data flows into and out of various elements within the process. 
  • Data Associations do not affect the sequence flow but rather depict the relationship between elements and the data they handle.
  • Data Associations can be visually depicted on a diagram using a dotted line.

Example 1a. Processing an Online Order, which only shows the work to be done.

Example 1b. Processing an Online Order, which also shows what data is used.

A helpful way to understand Data Objects is to think of them as local variables in programming - they exist within the process and change as Activities progress.

Differences between Data Associations and Sequence Flows in BPMN

It is important to be able to distinguish associations from sequential flows.

  • A Sequence Flow represents the order in which activities (Activities, Events, or Gateways) are executed in a process.
  • A Data Association links an Activity or an Event to a Data Object or Data Store to show how data is input or output.

Key Differences

Feature Sequence Flow Data Association
What it Represents Process flow or order of execution. Data flow (input, output, or storage).
Connects Two process elements (Activities, Events, or Gateways). A process element and a data element.
Token Usage Tokens travel along Sequence Flows to show the progress of the process. Data Associations don’t handle tokens, they only indicate the transfer of data.
Purpose Controls the flow of the process. Shows data being used, produced, or stored.
Visual Representation Solid line with a filled arrowhead. Dotted line with an open arrowhead.

There are other elements of BPMN that are useful in data modeling. Let's look at two of them: Data Object References and Data Stores.

Data Object References

Data Object References enable the same Data Object to be referenced multiple times throughout a BPMN diagram. These references can indicate different states of the Data Object at different stages of the process. 

Let's see how we can use them with a practical example.

Example 2: Employee Leave Request Process

An organization has a leave approval process where an employee submits a request, which is reviewed and approved/rejected by a manager.

Example 2: Employee Leave Request Process

The names of Data Object References are created by combining the name of the Data Object and its state in square brackets, like this: <Data Object Name> [<State>]. In our example, these are the elements “Leave Request [Draft]”, “Leave Request [Approved]”, and “Leave Request [Rejected]”.

A Data Object represents actual data that is used or produced within a process, while a Data Object Reference is a reference or pointer to a Data Object, allowing it to be accessed or shared across multiple activities without duplicating the data itself.

Data Stores

Data Stores are used to represent repositories where data is stored persistently beyond the lifecycle of a single process instance. 

They can signify databases or physical storage systems. They allow activities to retrieve or update information as needed.

Example 3: Loan Application Processing with a Subprocess and Data Stores

A bank processes customer loan applications. The main process includes receiving the application, processing it in detail within a subprocess, and notifying the customer of the outcome. Inside the subprocess, the loan application goes through several steps like initial review, credit check, and final decision.

Example 3: Loan Application Processing with a Subprocess and Data Stores

Data Sources used:

  • Internal Customer Database: the bank's internal database storing customer records and transaction history.
  • Risk Assessment System: a decision engine or risk assessment tool used for evaluating financial risk.
  • Document Management System: a system for storing and archiving digital documents.

Take a look at the table that highlights the key differences between Data Objects and Data Stores in BPMN:

Aspect Data Object Data Store
Definition Represents data that is used or manipulated by activities in a process. Represents persistent storage of data that can be accessed by multiple processes.
Lifespan Temporary during the execution of a process or activity. Persistent across multiple process instances or over a long period.
Purpose To show information or data used/produced during process execution. To store data that needs to be retrieved or updated by various processes over time.
Visibility Only visible within the scope of the process or activity. Visible across different processes and can be accessed by multiple activities or processes.
Usage Can be passed between activities (input/output). Can store data that is retrieved by activities (e.g., databases, files).
Representation Shown as a document or data object icon, typically connected to activities or events. Shown as a database symbol or storage icon, typically connected to processes or data flows.
Interaction Data Objects are passed or updated between activities. Data Stores are typically read from or written to by different activities or processes.
Example An invoice, a customer order, or a product specification. A customer database, inventory database, or system log.

Steps to model Data in BPMN

  1. Describe the Business Process: Begin by outlining the overall process, including its boundaries, triggers, and outcomes. This foundational understanding will guide subsequent modeling efforts.
  2. Identify Data Objects: Determine which data objects are relevant to the process. This involves recognizing what information is needed and what will be produced.
  3. Define a Data Model: Create a structured representation of each data object. This includes identifying entities, their attributes, and relationships.
  4. Determine Data Input and Output: For each Activity, specify what data is needed to perform the task and what will be produced as a result. This step ensures that all necessary information flows correctly through the process.
  5. Map Data Objects to BPMN: Use BPMN elements to visually represent the identified Data Objects within the diagram. Connect these objects to relevant Activities using Data Associations.
  6. Model Decision points and Gateways: Use Gateways (e.g., Exclusive Gateways) to split or merge paths based on data conditions.Document the criteria for decision-making.
  7. Use Data Stores for persistent Data: Indicate where data is stored for long-term access or across processes. Ensure Data Stores are clearly linked to Tasks or Sub-Processes.

Advanced concepts

BPMN offers advanced data modeling concepts that go beyond the basics, including handling collections, transformations, and collaborative data management across multiple processes. These features are valuable when modeling complex, multi-layered systems.

Conclusion

Data handling is a critical aspect of BPMN, and understanding its core elements empowers process modelers to create diagrams that effectively represent information flow. 

Data Objects illustrate the creation and use of information in Activities, while Data Associations link Activities and Events to data for greater clarity. Data Object References allow the same data to be reused in multiple stages, showcasing different states, and Data Stores ensure information persists beyond the process lifecycle. 

While these basics are essential, mastering BPMN’s advanced data features will help you model even more complex scenarios and drive better business outcomes.

✔❌ BPMN 2.0 Quiz (Level 1, Lesson 8) 📝

Take the BPMN 2.0 Lesson 8 Quiz