Business Process Modelling Notations
Krishna Krishnan
Product Owner | MBA, Backlog Management, Process Improvement, Product roadmap Management, Product development, Agile, Requirement Engineering
BPMN or Business Process Modeling Notations is a flow chart method that models the steps of a business process that is already planned or in the process of planning. This is an important toolkit in the hands of a Business Analyst, Operations Analyst or even a Product Owner. This diagram visually depicts a series of steps or business activities that occur in sequence and show information processes needed to complete a process.
BPMN help in improving efficiency, add in new/changes circumstances or processes and gain competitive advantage. It also helps identify any potential loopholes in the proposed business Process.
At a high level, BPMN is targeted at participants and other stakeholders in a business process to align the understanding of the end to end business process using a visual tool. At a deeper level, it also is aimed at people who will implement the process, developers, QA, architects, etc. providing enough detail to enable precise implementation. It is an easy to understand, standard and common language for everyone involved in implementation of a project, managers, technical developers, Quality analysis, Learning teams, Operations team, consultants, Business analysts and literally anyone involved in the project.
What makes up a BPMN?
BPMN depicts these four types of elements for drawing a business process
Now, we will look at the individual elements and what they mean or depict.
Events
Events ate triggers that start, modify or complete a process. They are shown by circles containing other symbols based on event type.
A start event is showed as a circle without any thick or thin borders. An end event is showed as a circle with a thick border while an intermediate order is shown as a circle with a double edged border.
A BPMN diagram might have multiple start events. In such cases, events that originate from appropriate start event will be activated. For e,g, in the below example, if an order will be placed depending on whether the order is received via call, mail or in person. The respective start event will trigger the event
An end event marks the end of the process. As soon as all the steps in the diagram are completed and the end event is reached, the process is terminated. Since a process can have multiple outcomes such as pass, fail, etc. multiple events can be used to deem a process as completed or failed.
In the below example if the order is processed, then it will be terminated. If the card details fail, then the receipt will not be generated and the order will fail.
In the above example, the outcome of the event is very different, though both are end events and the likelihood of an employee ending in the place depends on the actual path followed. Note that when multiple end events are present, the names of the end events must be different.
An intermediate event can occur between the start and end events and is used for catching and throwing information. Depending on the connecting object, you can realize whether the item catches or throws information.
In the above diagram, when a message is received, the process is initiated. Someone looks for the availability of the item and then send a confirmation link when the item becomes visible. The intermediate event throws the confirmation link. Only once the confirmation link is received or caught, the order is processed and the order is completed (end event)
There are multiple images that can be used in the middle of the event which basically determine the various triggers for the event. These could be a message, timer, error, compensation, conditional, signal, multiple events, escalation or parallel triggers.
领英推荐
Activities
Activities show the particular activity or task performed by person or system. It is shown as a rectangle with rounded corners. They can become more detailed such as loop.
The first category is task which can be broken down based on the actors, objects used, consumed or produced
E,g. a service is worked on by the system. Send, receive, instantiate receive tasks involve messages. A manual task is one which is performed manually by an executor. A user task is one performed by user. Script, Business Rule and User tasks are ones that are performed by automated scripts, users or business rules
Some other forms of tasks are collapsed sub process, multi instance tasks and ad hoc sub tasks.
A collapsed sub process consists of various other tasks within the process. For simplicity and ease of understanding the item covers as a whole what the set of steps cover. The sub process is then expanded in a different box as shown above
A multi instance activity shows that the activity occurs for a set number of objects or items. The number of times that the activity completes is determined by the defined number of items in the list.
The ad hoc sub processes task do not have a specific sequence or the order in which the tasks within the subprocess are performed are inconsistent or unspecified. They do not have a running order.
Loop tasks are ones that are performed in a loop. It resembles a do while activity in programming. The sub activities or the task is perfomed once and then exit conditions are checked. If condition is false, the activity is performed again. If condition is true, then the condition is evaluated once again. If the condition is true, then the next set of activities are performed.
Multi instance loops are like for-each loop where the task or subprocess is executed for each item in a list. Processing each item is a separate instance and the activity is deemed complete only when all the instances are completed.
If the lines are vertical, then it means that the multi instance loop has each item execute in parallel. If the lines are horizontal, then it means that each item can execute in sequence.
Gateways
Gateways are decision points that can adjust the path based on conditions or events. They are shown as diamonds and can be inclusive, exclusive, parallel, complex or based on data or events.
Exclusive Gateway: It can be represented by either a diamond with an X or without the X. When dividing the flow, it directs the flow exactly to one of the output branches.
Inclusive Gateway: It is a diamond with a circle inside. When used as a diverging gateway, an inclusive gateway can have multiple branches going out from it. All active branches must be completed before converging on another gateway.
Parallel Gateway: It is a diamond with a plus sign symbol inside it. When used to split the flow, all output branches are activated simultaneously. When converging parallel branches, it waits for all inputs branches to complete before starting the output stream.
Complex Gateway: This gateway is shown with an asterisk in the middle. It represents deviations and convergences that cannot be represented using other gateways. The complexity is implemented through a rule defined in the gateway itself.
Event gateway: Within the diamond, there is a double circle inside which is a hexagon. This is followed by an intermediate event of a message receiving task. The flow sequence is routed to the next event or task that occurs first.
With this I will end the topic on Flow objects. The next article goes into the remaining objects namely connecting objects, pools and swimlanes and Artifacts.