RPA (robotic process automation) promises to rescue business users from performing boring, repetitive tasks.
Hence the term “robotic”: The nature of the jobs performed by RPA tend to be rote and low-level. Businesses use RPA software to create software bots that perform pre-defined, structured jobs that typically involve filling in electronic forms, processing transactions, or sending messages.
Stitch those basic activities together into fleets of RPA bots, and customers have tremendous potential to eliminate drudgery—in data entry, billing, order management, HR onboarding, and endless other areas.
Banks use RPA for due diligence reviews on loans, invoice processing, and customer checks. Sales organisations use RPA to automate quotes and invoices. Insurers use RPA to speed up claim adjudication.
In addition, with the help of machine learning, RPA can automatically transcribe recorded conversations, extract text and numbers from images and videos, and populate databases from hand-filled forms.
Under the hood, RPA systems include process mining, bot creation tools, plug-ins for connecting to enterprise systems, and a scheduling or orchestration layer. The tools in RPA systems often have limits, so people sometimes fill those gaps with hand-coded automation scripts.
It’s important to keep expectations in line for what RPA can handle. Purveyors of RPA tend to imply their products contain more intelligence than they actually do, which has led to some disappointment with RPA in general.
And rollouts need to be planned and executed carefully to avoid failed RPA deployments. Users need to be clear about what they want to automate before they select an RPA product—and ensure they choose one that has the capabilities they need.
How does RPA work?
RPA works by pulling information out of existing IT systems, either through an interface to the back-end or by emulating how a human would access the system from the front-end. With legacy enterprise systems, users must often go through the front end, because they can't access the back-end system directly.
Front-end RPA is an evolution of old-fashioned screen scraping. If they've ever used screen scrapers for an extended period, they know that they tend to be fragile: The minute something unusual displays, such as a number too large for its field, or as soon as the display format changes because of a software update, the screen scraper either returns wrong answers or stops working. Machine learning can reduce but not eliminate such showstoppers.
Advantages and limitations of RPA
Advantages of RPA include:
- Time savings for employees from off-loading repetitive tasks to bots
- Reduced error rates on tasks automated by RPA
- Shorter times to perform automated tasks
- Increased business capacity when the rate-limiting tasks have been automated
Limitations of RPA include:
- Cost and time to set up bots, including IT involvement, identifying automation candidates, and possible consulting
- Need to monitor and maintain bots
- Inability of bots to extract information from unstructured and hand-written documents (but some products apply ML to mitigate these issues)
- Inability of bots to detect or deal with exceptions in standard tasks (but some products have a human review mechanism)
- Inability of bots to automate non-standard tasks
Once the RPA system has extracted the information it needs, it goes on to perform a pre-defined task. Common use cases include applying business rules, generating a report, sending an invoice for a receivable, or generating a check for a payable.
The bots that execute RPA tasks may run attended or unattended. Attended RPA bots run in response to an employee request. Unattended RPA bots run on a schedule—for example, to generate nightly reports. Almost all RPA bots need supervision and periodic auditing to ensure they continue to work properly.
A human must define the workflow for an RPA bot before it can work. This often begins with process recording—an activity not unlike recording a macro, only across multiple systems. The macros analogy extends to writing and editing scripts for bots as well.
Many RPA solutions also offer a flowchart-style interface for stringing together elements of a bot’s task, enabling "citizen developers" to define workflows. Some RPA systems, however, still need to be set up by IT.
One of the difficult and time-consuming parts of reproducing existing business processes is identifying what the business processes are and how they work. Some RPA process mining tools can parse the logs from the existing processes; others need to observe and record employees at work. Worst case, this process discovery needs to be done manually.
How to choose an RPA product
Before users commit to an RPA product, they need to understand that every single one of them uses its own proprietary file formats. Despite their utility, they're all roach motels, completely lacking in portability. It's not like they're ignoring the standards: There are no standards. Evaluate carefully and do a proof of concept before committing the company to a rollout, because a change of mind later will be painful and expensive.
Verify that all basic features—and the differentiating features they think they’ll need—work in the environment. Build scripts using all the supplied tools and demonstrate that the orchestration works properly. Test out an unattended bot, verify that bots can parse unstructured documents and PDFs, and go through process mining procedures.
Customers must also pay particular attention to these key factors in the evaluation:
Ease of bot set-up: There should be a range of ways to set up a bot for different personas. Business users should be able to point and click the applications they normally use while a recorder takes note of the actions. Citizen developers should be able to use a low-code environment to define bots and business rules. And finally, professional programmers should be able to write real automation code that calls the RPA tool's APIs.
Low-code capabilities: Typically, low-code development is a combination of drag-and-drop timeline construction from a toolbox of actions, filling out property forms, and writing an occasional snippet of code. Writing small amounts of code, for example "loan_amount < 0.20 * annual_income" can be much quicker than graphical methods of specifying a business rule.
Attended vs. unattended: Some bots make sense only if they run on-demand (attended) when a business user needs them to perform a well-defined task—for example, "turn this graphic into text and put it on the clipboard." Other bots make more sense if they run in response to an event (unattended), such as "perform due diligence on each loan application submitted from the website." Customers need both kinds of bots.
Machine learning capabilities: The RPA tools of just a few years ago had trouble extracting information from unstructured documents—and typically, 80 per cent of a company's information is found in unstructured documents rather than databases.
These days, it's common to use RPA machine learning capabilities to parse documents, find the required numbers, and return them to the user. Some vendors and analysts call this hyperautomation, but the fancy language doesn't change the functionality.
Exception handling and human review: Categorical machine learning models typically estimate the probabilities of the possible results.
For example, a model to predict loan defaults that returns a 90 per cent probability of default could recommend denying the loan, and one that calculates a five per cent probability of default could recommend granting the loan. Somewhere in between those probabilities there's room for human judgment, and the RPA tool should be able to submit the case for review.
Integration with enterprise applications: A bot isn't much good to a company if it can't get information out of enterprise applications. That's usually easier than parsing PDFs, but users need drivers, plug-ins, and credentials for all databases, accounting systems, HR systems, and other enterprise applications.
Orchestration and administration: Before customers can run any bots, they need to configure them and supply the credentials they need to run, typically in a secure credential store. They also need to authorise users to create and run bots—and provision unattended bots to run on specific resources in response to specific events. Finally, users need to monitor the bots and direct exceptions to humans.
Cloud bots: When RPA started out, RPA bots exclusively ran on user desktops and company servers. But as IT estates have grown into the cloud, companies have set up cloud virtual machines for use by bots.
Recently, some RPA companies have implemented "cloud-native" bots that run as cloud apps using cloud APIs rather than running on Windows, macOS, or Linux VMs. Even if a company has invested little in cloud applications today, it will eventually, so this capability is highly desirable.
Process and task discovery and mining: Figuring out processes and prioritising them for automation is often the most time-consuming part of implementing RPA. The more the RPA vendor's app can help mine processes from system logs and construct task flows by observation, the easier and quicker it will be to start automating.
Scalability: As RPA implementation rolls out to the enterprise and handles more automations, users can easily run into scalability issues, especially for unattended bots. A cloud implementation, whether native, in VMs, or in containers, can often mitigate scalability issues, especially if the orchestration component is capable of provisioning additional bots as needed.
Ultimately, the success or failure of RPA implementation will depend on identifying the highest-reward processes and tasks for automation. For example, if the highest-reward process for a bank is performing due diligence on loan applications, make that (or a key task from that process) the RPA proof of concept.
Don’t cut corners on the testing cycle. If it turns out the RPA solution adopted has some missing or inadequate capability, and users need to switch, they're in for a world of hurt. To mitigate the risk of having to re-create all bots from scratch, users should document all the steps in each task and process.
When they change horses, they might still need to spend a week re-implementing each bot, but can avoid the month they spent figuring out each process.
Key RPA vendors
While there are dozens of RPA vendors, the same handful enter into the discussion again and again. The following seven vendors have been selected from the most current Forrester Wave and Gartner Magic Quadrant analyst reports and arranged alphabetically. Inclusion in this list is not a recommendation and exclusion is not a condemnation:
Automation Anywhere: The company’s Automation 360 is a cloud-native, AI-powered, web-based platform for end-to-end automation. RPA capabilities range from simple bots that users generate with a recorder to IQ Bot, which uses a combination of ML and data processing to extract information from documents. The platform now supplies governance, security, and compliance features as well as bots and analytics.
Blue Prism: Offering a suite of products that address different aspects and use cases of RPA, Blue Prism is now looking beyond RPA to the intelligent automation space. The company now sells a cloud-first offering featuring “digital workers” with capabilities drawn from its digital exchange marketplace.
EdgeVerve: An Infosys company, EdgeVerve is an AI and automation provider. It offers AssistEdge RPA, AssistEdge Discover process mapping, AssistEdge Engage contact centre automation, and AssistEdge Cloud RPA. EdgeVerve also offers vertical solutions for banking, value networks/supply chains, finance, and procurement.
Microsoft: Microsoft Power Automate Desktop, a low-code RPA tool, is available for Windows 10 users at no additional cost. In addition, the Power Automate per-user plan with attended RPA is available for US$15 per user per month for a limited time.
This enables automations across an organisation to share and collaborate across flows, access more than 400 built-in connectors, identify bottlenecks in business processes, extract data from documents, and manage and control flows with centralised governance.
NICE: NICE RPA offers attended and unattended automation, an automation finder, and support from cognitive technologies such as OCR, chatbots, and machine learning. NICE CXone is a customer experience platform that integrates with its RPA offerings. NEVA is NICE's personal assistant bot for employees. NICE also has a portfolio of finance-specific tools, such as Actimize for anti-money laundering.
UiPath: The current release of the UiPath Platform (21.4) features enterprise-scale management and governance; AI-powered discovery, prioritisation, and integrated development of the most impactful automations; upgrades for all user experiences; and rapid expansion of Automation Cloud capabilities. UiPath can be deployed in its hosted cloud, in a public cloud, or on-premises, although the hosted cloud is updated most often.
WorkFusion: WorkFusion automates document-heavy manual work for large-enterprise customers in banking, financial services, insurance, and healthcare with the WorkFusion Intelligent Automation Cloud. Top automation areas in banking include anti-money laundering, account opening, sanctions screening, LIBOR transition, and mortgage lending.
Given that users won't be able to port scripts to another RPA system, they also need evidence that the vendor being considered has strong financial stability. The worst case would be that users did a full rollout, the vendor went bust, the licensing server stopped authenticating the installation and the entire implementation shut down.