Use BPMN to Design MuleSoft RPA Processes
Learning Objectives
After completing this unit, you’ll be able to:
- Define BPMN.
- Identify the parts of BPMN used in MuleSoft RPA.
- Describe how BPMN is used to design RPA processes.
Before You Start
This module builds on MuleSoft RPA Lifecycle, so we recommend you complete it before you continue. Recall from that module, you learned how to propose, evaluate, and approve a candidate RPA (robotic process automation) process for development.
In this module, you’re introduced to BPMN and how it’s used in MuleSoft RPA Manager's BPMN editor to design MuleSoft RPA business processes. You also learn how MuleSoft RPA Recorder and its associated editor can be run on a Windows system to automatically capture user interactions.
MuleSoft RPA uses a standard modeling language notation to design and build RPA processes. In this unit, you learn the parts of this language that are used by MuleSoft RPA to build automated processes to replace manual human actions.
What BPMN Is and How It’s Used in RPA Manager
MuleSoft RPA processes are designed and built using the business process model and notation (BPMN) language. BPMN is a standard way of creating workflow diagrams for business processes.
BPMN is powerful because it’s designed to be user-friendly and easily translated into machine-executable programs. When using BPMN to design business processes, you assemble a process out of symbols.
Here’s an example of a BPMN diagram that illustrates a business process.
The diagram is composed of symbols that are linked together into flows and shows how various tasks are linked together to carry out typical user workflows.
The following table shows all the BPMN symbols used by MuleSoft RPA.
BPMN Symbol |
RPA Element |
Description |
---|---|---|
Connection |
Connects two flow elements. The arrow indicates the flow direction. Connections can be labeled. |
|
Start Event |
Represents the start of a flow. RPA process flows can only have one Start Event. The event’s documentation can specify when and how to trigger the flow. |
|
Stop Event |
Represents the end of a flow. RPA process flows can have several End Events. |
|
Timer Boundary Event |
Represents a condition to time out and skip the flow element. |
|
Bot Task |
Represents code that is run in an RPA bot. The task’s documentation specifies the code. |
|
User Task |
Represents pausing the flow to wait for user input. |
|
Exclusive Gateway |
Represents a conditional decision point in the flow between two or more routes. |
|
Intermediate Event |
Represents a way to break up complex flows into separate flows that are connected by named links. One flow ends in a Throw-type Intermediate Event that is associated with an inbound Catch-type Intermediate Event in another flow. This helps clean up complex BPMN diagrams. |
The following example explains how the BPMN symbols are used by RPA processes in MuleSoft RPA. The round symbols specify events, such as the Start Event at the beginning of a flow. The Start Event may be documented with details about the types of events that trigger the flow or configurations for the source of these events.
Every flow should end in a corresponding End Event. The flow proceeds through each flow activity until it reaches the End Event. The End Event might specify configuration documentation on how to clean up any resources used to carry out the flow. There’s also a Timer Boundary Event that has a clock icon. This event specifies when to stop waiting for something based on a condition.
The rest of the symbols represent various activities. The rectangular activities are called "tasks." The task with a person icon is a User Task activity, and it represents a person manually interacting with the flow.
A Bot Task activity has an icon with two gears. It represents the detailed instructions for an RPA bot to imitate or automate human interaction with a Windows system.
In the context of MuleSoft RPA, all the BPMN symbols are called "elements" because they are used to generate actual running programs. Elements are configured to specify how the actual RPA process program runs.
To communicate with external systems within an RPA flow, you use special elements within the workflow implementation for a Bot Task. For example, you use special elements to send email, read or write from an Excel spreadsheet or file system, or to make a REST request to an external application.
While there are other symbols, they aren’t used as frequently and aren’t discussed in this module.
How BPMN Is Used with MuleSoft RPA
The magic of BPMN is that diagrams are represented by structured XML. This structure is similar to the way Mule application flows are displayed and modified.
The following is part of the XML representation of the BPMN diagram you just saw in the previous graphic.
Structured XML is easy for computers to read and interpret. BPMN diagrams you create in MuleSoft RPA Manager can be imported into MuleSoft RPA Builder and used as instructions to generate a skeleton for an actual RPA process implementation. You can quickly start coding and building an RPA process from the BPMN diagram. The BPMN diagram helps you capture the flow of activities to carry out common business activities, such as automatically simulating a human interacting with the Windows keyboard and mouse.
BPMN also allows the visual elements to be annotated with additional documentation. MuleSoft RPA provides MuleSoft RPA Recorder and MuleSoft RPA Recorder editor that automatically track a user’s actions on a Windows system. This tracking saves each mouse click and keyboard action as documented text for one or more Bot Task activities in the BPMN diagram. This is a fast way for you to capture the exact requirements of an RPA process design in readable text. This also lets you iterate and modify the BPMN diagrams before all the underlying implementation details are added.
In this unit, you learned what BPMN is and how it is used in MuleSoft RPA. In the next unit, you learn how to claim and start editing an RPA process in MuleSoft RPA Manager.