Technology Spotlight: Robotic Process Automation
A deep dive look at Robotic Process Automation.
From time to time, I'll take a break from the usual Enterprise Architecture bashing to take a look at a specific technology. In this case, Robotic Process Automation is something that has popped up as worth looking deeper into.
What is it?
Robotic Process Automation is actually a fairly loosely defined set of tools. Some of the tools work in concert with AI, many of them are nothing more than screen-scraping updated for today. The concept is that a bot will receive a stimulus in some form, and then will interact with existing applications - maybe updating data, maybe copying data from one place to another, maybe combining information from multiple places and doing something interesting with it.
What value does it provide?
The sales pitch is that it can completely automate boring, repetitive, time consuming, error prone tasks. Increasing quality of the job, while not requiring a human being to be directly involved lets you leverage human effort - basically the automation business case.
What's my take on it?
There are absolutely places where it can make sense to use this kind of tool, but it needs to be applied with some care - don't fall into the trap of seeing it as the solution to all of the world's problems. As always, looking at what the actual return on investment is on these types of tools is where it should start.
Places where it makes sense:
There are a number of characteristics of processes that are ripe for automation
Highly structured processes, clearly defined logic, well defined workflow
These are much easier to automate, which means the cost component of the ROI will tend to be lower.
Prone to costly human error (tedious, boring, unfulfilling) processes
Automating these processes will reduce the error rate, which in turn provides a direct return. The softer side of this is that you're taking away the terrible parts of someone's job, and leaving them with hopefully a more engaging workplace - this should lead to lower turnover, higher engagement, and better productivity in other aspects of their work
Involving multiple applications, tools, external systems, legacy systems
Systems that don't have a robust integration path can be leveraged by deploying RPA tools to extract and inject data that may not have been possible without "swivel" integration (having a person manually copy/pasting data, or doing data entry from one application to another.) My preference is to leverage proper integration tooling if at all possible, but there are situations where it's not possible.
High volume and low complexity, or low volume and high complexity
High volume means that relatively small efficiencies are multiplied by a big number. Saving 100 people 10 minutes per day adds up in a big hurry. High complexity/low volume works on the other side of the equation - those processes tend to take a lot longer, and can sometimes provide large efficiencies for relatively small investments. A process that takes 3 days of effort to execute might only take 5 days of effort to automate down to minutes of effort to execute. Payback is two or three execution cycles, without even taking reduced error rates into account.
What does the future hold for Robotic Process Automation?
Right now the marketplace is crowded with a lot of small-ish vendors. I expect there will be consolidation and one or two larger players will emerge - who will then be swallowed by some of the big players in the IT space - Microsoft, Oracle, SAP, Google etc. The tools that are leading the pack today will likely not exist in their current form in 10 years, having been replaced completely by AI driven smart agents that are being invested in heavily by the big players - Alexa, Cortana, Siri, Google Assistant type of tools will eventually subsume the capabilities of RPA tools.