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.

You may be familiar with Business Process Management (BPM). It is a discipline in which people use various methods to discover, model, analyze, measure, improve, optimize, and automate business processes. Today BPM, or more specifically the technology that supports BPM, is widely used in organizations large and small to automate business operations. The story of BPM is long, with roots going back to the early 1990’s, and it has constantly reinvented itself to meet the evolving needs of enterprises. Once focused on driving efficiencies into back-office functions, BPM platforms have evolved into essential tools for enterprises looking to digitally transform operations, and to deliver a personalized customer experience that’s integrated across points of interaction.

BPM in the Application Environment

The focus on digital transformation has led to the modern role of BPM solutions in application development, and to the rearchitecting of the old monolithic BPMS as a set of middleware services that developers can easily incorporate into applications. Now often referred to as a Digital Application Platform (DAP), the BPMS has become part of the application environment – a catalog of components that can be included in applications requiring process management, decision management or optimization capabilities. Now, for example, when building an application that requires, say, to make a determination of whether an insurance application complies with underwriting rules, a developer can quickly locate the corresponding decision service within their app environment and include it in their application. Conversely, it’s the new DAP solutions that enable such application services to be quickly created from models provided by the business. Business friendly tools support the creation of a range of model types – from decision models, built with the new graphical Decision Model & Notation (DMN) standard, to models of entire business processes constructed in Business Process Model & Notation (BPMN). DAP technology today is truly making it possible for business users to contribute to application development alongside developers.

Cloud-Native Digital Automation

The advantages of modern digital automation middleware are not limited to application development, however. Once built, those new applications must be deployed on a variety of cloud platforms, they must scale automatically to meet varying demands, they must be secure, and they must be easy to replace or upgrade without impacting the user experience. At Red Hat, the application environment, in which DAP services are included, is designed from the ground up to be cloud-native. DAP services are deployed in containers, and managed by Kubernetes, to provide the scalability and resiliency that enterprises need.

Digital automation today is an essential part of modern applications, and its importance is only likely to increase as we look to the future role of the Digital Automation Platform as the logical home for emerging technologies like Robotic Process Automation (RPA), and artificial intelligence / machine learning. At Red Hat, we are focused on growing our application environment to support this widening technology landscape, so that our customers can succeed in an ever more digital world.

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.

Do you want a step-by-step introduction to setting up JBoss BPM Suite, then coverage of practical and important topics like data modeling, designing business rules and processes, detailed real world examples, and tips for testing?

For the last few years I’ve been working on putting years of working with JBoss BPM Suite, community projects Drools and jBPM together in one easy to understand book.

In 2017, Red Hat put the first chapter online for free and literally thousands downloaded it starting their journey on the road to delivering process driven application with JBoss BPM Suite. Many of you have reached out over the years to ask about the completion of this book and where you can get it.

The good news isthat the book is available and Red Hat’s providing ebook downloads for free!

Sometimes we would like to change the behavior of an application fast. I mean, really fast.

Traditional development cycles for enterprise applications take weeks if not months for a new version to be ready in production. Even in the world of DevOps, containers, and microservices, where we can spin up new versions of an app in days, or even hours, we need to go through development cycles that are too far away from the business users.

Welcome to the world of business rules and decision services, along with low code development.