Robotic Process Automation and Cloud Technology – Challenges and Opportunities

The original article was published on IT Toolbox on July 23, 2019. 

RPA holds incredible promise for organizations looking to drive greater efficiency and cost savings; however, the industry must overcome several crucial challenges before it can truly live up to its potential. This article unpacks those challenges and explores the opportunities ahead.

Robotic Process Automation holds incredible promise for organizations looking to drive greater efficiency and cost savings; however, the industry must overcome several crucial challenges before it can truly live up to its potential. This article unpacks those challenges and explores the opportunities ahead.

By now, you’ve probably heard about Robotic Process Automation (RPA). It is not especially a new idea that’s suddenly gaining attention as businesses strive to become more digital. The promise of RPA is providing quick and significant cost savings through automation of human tasks with software robots. In fact, PwC estimates that “45% of work activities could be automated, and that this automation would save $2 trillion in global workforce costs.”

Challenges Faced by Organizations

Today, there are thousands of software robots automating everything from simple tasks like order entry and invoice preparation, to complex interactions, like issue resolution and customer service. But there are challenges awaiting many organizations, who have rushed to deploy robots.

1. Cloud Infrastructure Challenge:

First, there’s the matter of the cloud. Before RPA came along, those same organizations were busy planning multi-year efforts to reap the benefits of cloud computing. Moving IT to the cloud offers a similarly enticing cost benefit, but it is a long term project, requiring the deployment of new and emerging technologies.

Much has been invested in containers, orchestration, microservice and service mesh architectures, etc., as we lay the foundations for a serverless, data center-less future. However, RPA has some catching up to do. It is still confined to the desktop—the Windows desktop, to be precise.

The majority of software robots currently deployed are of the ‘attended’ type. This means that they exist on your Windows desktop, much like the little ‘Clippy’ assistant in bygone versions of Microsoft Office, where they do things like, move rows of data from a back office database to a spreadsheet, so that you can focus on more important things.

In the recent years, RPA has evolved to enable ‘unattended’ bots to manipulate your enterprise data behind the scenes, on Windows servers. That’s a step in the cloud direction, but still far from the notion of cloud-native bots that can cruise around your hybrid cloud and fix whatever needs fixing.

When will we see containerized bots, orchestrated by standard platforms like Kubernetes and Istio? Well, presumably not until RPA vendors realize the central role that Linux plays in modern cloud architectures. But more importantly, not until RPA goes open source. Why? Because open source software is the central pillar of modern cloud stacks, and if RPA is to have a role in hybrid cloud infrastructure, it must be open source too.

However, today, there is very little in the way of open source RPA. There are a few open source RPA-like projects such as, TagUI, Robot Framework and Sikulix, but these are very bare-bones compared to the market leading proprietary products in the market currently. The opportunity for these proprietary vendors to play in the hybrid cloud market is immense if they can embrace open source business models.

2. Cost Challenge:

The second challenge for users of RPA looking to save on labor costs is that today’s bots just aren’t all that smart. They don’t measure up to their human counterparts in their ability to figure out how to get the job done when some part of it turns out a little differently. Some bots are simple macros, repeating the same series of steps over and over. Others may have a little more intelligence, perhaps a rules engine to handle complex scenarios, but very few have anything close to actual intelligence.

The world of AI and ML is currently separate from RPA, and although some bots may be able to utilise AI services, like IBM Watson, none of them have the in-built ability to learn from past experience so they can do a better job the next time. Consequently, the anticipated cost savings don’t always materialize, and bots can be limited to highly structured and repetitive tasks. Just like with the cloud, though, there is opportunity here. I expect a marriage of RPA and AI/ML will likely happen soon, and will open up a new landscape of possibility for automated business.

3. Implementation Challenge:

Finally, there’s the implementation challenge—how to deploy RPA technology so that it supports your IT strategy rather than hobbles it. It’s easy to be tempted by RPA’s promise of a quick fix into attacking the symptoms of your problems rather than the root cause. Some organizations deploy bots as ‘band-aids’ to relieve bottlenecks in semi-automated processes, when the real problem is an ageing infrastructure that can’t accommodate new business requirements. This may solve the immediate problem, but will continuously break again with every minute change in operating processes, applications or infrastructure. Partly, it’s the ease with which an RPA bot can be deployed that’s to blame. Why go to the trouble of creating APIs for critical applications when it is easier to just have a bot screen-scrape, say, an accounts receivable app to get the one extra data field needed for the new invoices?

The answer, of course, is because this problem is just a symptom of a larger issue within the IT infrastructure, RPA does not fix a spaghetti tangle of applications, data and integration strategies. Organizations with this problem need to focus on building a cloud-native foundation first. Otherwise, if the team continues to throw bots at every new business request, the entire data center will eventually collapse from unmanageable complexity.

Automating Human Work

RPA is a valuable technology when it is used to automate human work, and not to patch holes in IT systems and applications. It is made more powerful when it can integrate effectively into a modern application environment—monitoring events, using cloud services to gather information and interacting with applications via APIs.

The opportunities for automation are huge, but the supporting IT infrastructure is critical. I believe those enterprises that are able to combine a modern cloud-native application environment with open source, intelligent, cloud-native bots will have an unparalleled competitive advantage.

Process management and business logic for responsive cloud-native applications: Red Hat Process Automation Manager is released

Today, Red Hat announced the latest major release of its business process suite, with a new name and several major changes that pivot the focus of the product itself. Red Hat Process Automation Manager is about more than providing a business process modeler or optimizing resource allocation. This is the first generation (at Red Hat) of a digital automation platform — a hub where business users and technical developers can collaborate to create strategically-relevant, intelligent applications.

Red Hat Process Automation Manager has two core conceptual areas:

  • The first is based on decision management (the “intelligent” part of intelligent or even-driven applications). This includes the decision engine of Red Hat Decision Manager and allows automated, immediate responses to interactions, from event processing to resource optimization.
  • Second, Process Automation Manager provides the means of modeling and applying business logic within an application. In combination with a graphical UI, these creates a platform for business users to be able to design business logic in collaboration with the technical teams.

New feature: Process management + case management

The heart of a BPM platform is the “BP” — business process modeling. The previous BPM Suite supported BPMN, the notation specification for business process models, and DMN, the notation specification for data models. The assumption behind a lot of these specs is that the workflows or processes being modeled are relatively static or sequential. For certain types of business processes, that is an accurate assumption (things like resource optimization or scheduling). However, in many organizations, there are also processes which are not linear or which may follow different steps in a dynamic sequence or may be interrupted or require human intervention at certain points. These are generally defined within a related notation specification, Case Management Model Notation (CMMN).

While there are differences, there is also a lot of conceptual overlap between business processes / BPMN and case management processes / CMMN. Process Automation Manager combines the functionality of both process models and case management models within a single digital automation platform. (This is covered in more detail in the blog post here.)

Supporting both linear process / task models and dynamic or unpredictable case management models within the same platform allows developers to have a simpler development process (and, combined with other features like Process Automation Manager’s new graphical UI, makes collaboration with business users easier).

Process Automation Manager also supports other types of modeling and visualizing data and worflows:

  • Data modeling
  • Decision modeling
  • Custom data dashboards
  • Process simulations

New Feature: An easier way for business users to collaborate (graphical UI)

Previous versions of Red Hat JBoss BPM Suite were designed around business process logic, but were intended to be used by Java developers within the application development process. Beginning with this Process Automation Manager 7.0 release, there is a new Entando UI included with the platform. This provides an easier, graphical interface where business users can just drag and drop elements into their models — using ultimately the same platform that the developers are using to create the application. Business processes, rules, and logic can be written into the application essentially without having to write a single line of code.

This also effectively changes the workflow for creating event- and process-driven application. Previously, developers did all the work within their development environment. Now, business users can work in parallel (using the Process Automation Manager UI) to create artifacts which can be pulled into the developer’s IDE and code. Everything can then be packaged up and deployed in containers or other environments.

New feature: Cloud (and container) native applications

With more distributed, hybrid infrastructures, it is imperative that applications be able to function exactly the same regardless of the underlying platform. And those applications need to be designed, natively, to work in a distributed, dynamic environment so that they can be rapidly deployed, updated, or scaled.

Process Automation Manager can itself run in Red Hat OpenShift containers, in public or private clouds, on-premise, or in all environments — depending on the needs of your development and infrastructure teams. Additionally, the models and applications created using Process Automation Manager as a platform can be deployed into cloud instances, OpenShift containers, or local instances. This allows truly hybrid development, testing, and production environments.

Process Automation Manager components, applications, and models can all be exposed and accessed using REST APIs, allowing integration with other software applications or management tools.

Additional Resources

  • Dive a little deeper into process automation technology with our tech overview.
  • For general information about the Process Automation Manager, check out the datasheet.
  • There are different use cases for process automation and a business decision engine. The FAQ runs through some things to consider.
  • Get started by actually using the Process Automation Manager. Red Hat Developers has a whole “hello world” example, waiting for you.