Practical work with BPMN

For effective implementation of business logic, it must first be correctly described, and for this, a tool is needed that allows the description of business process logic.

BPMN (Business Process Model and Notation) is a system of symbols and their descriptions using the XML markup language for modeling business processes. It was developed by the Business Process Management Initiative (BPMN.org) and is supported by the Object Management Group after the merger of both organizations in 2005. The latest version of BPMN is currently 2.0 (2.0.2).

BPMN allows not only to describe the business logic of performing actions in the form of a visual diagram, but also to launch the drawn business process for execution. For this, specialized BPMS (Business Process Modeling System) systems that support this notation are used. Such systems can automatically translate the business process diagram into executable code and create a web application that will process data entered by users and third-party services. This concept is called Low Code/No Code (creating software without code development) and is great for automating office processes.

Creating visual process models helps everyone better understand, discuss, and remember processes. Because BPMN represents a process graphically, people with different backgrounds can become familiar with the model.

Visually representing a complex process helps remove barriers between what the business needs and what is technically feasible. This allows teams to agree on a design before writing any code. With this foundation, teams can iteratively improve the process using data from the process itself.

Business processes often face similar challenges regardless of industry or usage environment. As a result, several workflow methodologies and templates have been created that can solve these problems.

These patterns manage complex business process logic across multiple endpoints, such as parallel execution of process flows, message correlation, event escalation, or fatal error recovery.

Example of BPMN diagram

This is an oft-cited BPMN example developed by OMG to illustrate the interactions between different participants in a process. Since we want to clearly model the interaction between a customer ordering a pizza and a supplier who makes it, we classify them as participants and assign each one a separate pool. So we have a customer ordering a pizza, a clerk receiving the order, a cook who makes the pizza, and a pizza delivery person.

The diagram shows the various events and actions associated with receiving an order, cooking a pizza, and delivering it. Let's take a closer look at the main entities we see in the diagram.

Pools and zones

Let's start by looking at the work areas and pools used to build the diagrams. Pools are the outer container for processes that are performed by different participants, while zones are the inner containers that help divide the process into different stages of execution. Every BPMN diagram should contain at least one pool with one zone. But in our example, there are two containers Pizza Customer and Pizza Vendor, and the second container contains as many as three zones associated with different performers.

Events

Every diagram begins and ends with events. The events in the circles represent what happens during the process.

Simple circle

denotes a startup event, that is, an event that initiates a process. A startup event containing an envelope icon,

indicates that a message has arrived and starts the process.

In our example with the pizza delivery diagram, we have such an icon, when the order comes, the customer asks where his pizza is, and when he finally gets it. In this case, in the first case, a request is made to a parallel gateway, which we will talk about a little later, in the second case, the process of “calming down” the client by the clerk is launched. And in the third case, the payment process is launched.

Also, our diagram has a wait event.

represented as a circle with arrows. For such an event, a time interval must be specified.

And finally, the completion events. The circle with the thick line

indicates the completion of the process on the client side. And the filled circle with a thick line

this is, respectively, the complete destruction of the process. Thus, we have described the main events. However, we have other entities on the diagram, for example – gateways.

Gateway types

Our diagram shows only two types of gateways – parallel and inclusive gateways, but in our description we will not limit ourselves to them and will also consider other options.

So, parallel gateway

is used to represent two parallel tasks in a business flow. In our diagram, this gateway parallelizes the tasks of making and then delivering the pizza and calming the customer down.

Exclusive gateway

evaluates the state of a business process and, based on that state, distributes the flow along one of two or more mutually exclusive paths.

In the example below, depending on what is passed after the Go to Old North Chrunch step, Land or Sea, the exclusive gateway will choose what to do next.

Unlike a parallel gateway, which parallelizes tasks, an exclusive gateway distributes the flow strictly along one of two paths.

Another gateway shown in the diagram is the inclusive gateway.

The operating principle of the inclusive gateway is the logical OR operation.

Also worth mentioning is the event-based parallel gateway.

. This gateway allows multiple processes to run simultaneously, but unlike the parallel gateway, the processes depend on specific events. You can think of the parallel event-based gateway as a non-exclusive event-based gateway, where multiple events can trigger multiple processes, but those processes still depend on specific events.

Connectors

Also in the diagram we can see various lines with arrows at the end. These are connectors that show the transition from one BPMN diagram element to the next. Different textures of the lines indicate the difference between the flow of activities and the flow of messages. In our case, the dotted lines indicate the connection between different pools, and the regular lines connect entities within the same pool.

Creating a diagram

Before you start creating a BPMN diagram, define the scope of the process you are going to model. Determine the level of detail you need to include. The first shape in the diagram should be the start event. Since you know that your diagram will end with an end event, you can also place it on the diagram right away. In the standard notation of events, as we have already discussed, start events require a thin border, end events require a thick border, and intermediate events require a double circle. In addition to events, the diagram must include activities, usually named in the verb+noun format, such as Choose a pizza.

Next, working with the BPMN entities that we have looked at today, you can build a diagram that reflects a business process, perhaps even a fairly complex one.

Conclusion

In this short article, we looked at the main entities of BPMN using the example of a finished diagram and the elements used in it. Of course, this is not a very complex example, but it gives a basic understanding of the principles of working with BPMN.


How to draw a process in the free BPMN.IO service? We will find out at the open lesson on August 15. As a result of this lesson, you will learn to apply the BPMN notation in your work and master the BPMN.IO service.

You can sign up for a lesson on the page of the online course “BPMN: Advanced Practice”.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *