RPA and BPM Together — An Automation Combo

Abhimanyu Thite
Globant
Published in
4 min readDec 24, 2020

--

Integration of UiPath and Camunda BPM

What is RPA?

Let’s start with Robotic Process Automation (RPA), defined by UiPath as a technology that allows anyone to configure computer software, or a “robot” to emulate and integrate actions of a human interacting within digital systems to execute a business process. RPA robots utilize the user interface to capture data and manipulate applications just like humans do. They interpret, trigger responses, and communicate with other systems to perform a vast variety of repetitive tasks. Only substantially better: an RPA software robot never sleeps and makes zero mistakes (if coded well).

What is BPM?

UiPath defines Business Process Management (BPM) as: “an approach to streamlining business processes for maximum efficiency and value. It is an in-depth look at how processes are operating. BPM does this by identifying areas for improvement, and building solutions — usually from the ground up. BPM is about making sure the infrastructure of your business processes is solid.” Therefore, the focus of BPM is broader, a comprehensive approach to managing entire business processes from end to end. Businesses do not need to decide between RPA or BPM, as RPA can complement BPM quite well.

RPA vs BPM

Every business is ultimately the sum of the tasks, events, and decisions that add up to entire business processes. In the world of workflow automation, BPM can be seen as a full-scale automated business process from the start to the end involving multiple activities. On the other hand, RPA is a technology that deals more with smaller, repetitive tasks that can be performed by bots that just comprise a part of a business process.

RPA and BPM together offering an automation combo

What if we bring RPA and BPM together. It could be a game-changer combo for the automation industry. Both could be used as substitutes for each other. To explain this in detail, I am going to pick one of the BPM tools called Camunda and a simple use case.

USE CASE for End-to-end Process Automation

Almost every organization is running hundreds or even thousands of different applications, either bought off the shelf or built themselves, that are involved in executing their business processes. Because of that, most business processes span different systems or services, they are not executed in just one system from the start to the finish (“end-to-end”). This is often inevitable and sometimes even desired.

The example can be applied to any scenario where there is a need to replace manual work (the User Task in BPMN) with an automated task and where external applications or other systems did not expose their API’s or does not have API so with the help of GUI we can complete the work with automating those tasks and that can be invoked directly from Camunda. So with UiPath, we make tasks for the Robot to execute, from Camunda we execute those and wait to complete the task till to get the callback from the Orchestrator.

Architecture Overview :

How does Camunda Interact with UiPath?

High-level Solution:

Publish your automation to Orchestrator
Camunda Task has an Implementation of Java class.
Create a Java Class which is able to call the Orchestrator API.
(UiPath Orchestrator is Exposing API’s like getting information and running process, JOBs, Robots etc)
Camunda also expose an API which is work like a callback function, from camunda we triggered the process, and at end of the process we again calling the camunda API which helps us to resume the process

Example -

Here is the Image wherefrom the CheckWether method we are executing the JOB which we created in the orchestrator. In Wait, the robot executes it will wait for a response from the process which started executing through the orchestrator.

In the process workflow, we can send a REST HTTP request at the end to the BPM server, which is already in a listening mode that receives the request and proceeds to the next action.

Tools :
BPMN: Camunda
RPA: UiPath

ADVANTAGES:

Benefits of synergizing BPM with RPA

  1. Hyper-automation today involves a combination of tools. So in that sense, RPA products and end-to-end process automation products like Camunda are complimentary. You can combine them by letting Camunda orchestrate RPA bots together with other parts of a business process.
  2. Accelerates the BPM machine in such a way that sometimes it requires manual intervention and this combination help us to achieve hyper-automation
  3. RPA allows you to run a leaner and more efficient workforce.
  4. Integrates seamlessly, it does harm your existing environment
  5. Immediate results
  6. Different application interaction would be possible
  7. Eliminates bottlenecks
  8. Optimizes APIs

--

--