The Disadvantages of RPA
Robotic process automation is a technology for automating repetitive task that are performed by human beings on a computer. UiPath, Blue Prism and Automation Anywhere are some of the more well-known RPA providers. The RPA scripts, commonly known as “bots”, scrape information from the user interface of an application and fill in data to automate simple business processes and reduce manual labour. Since the “bots” are nothing more than scripts, they have no intelligent functionality and need to be trained on specific user interfaces to function. They cannot respond dynamically to changes in the user interface or the data presented there.
Unfortunately, this implies that as soon as an application is updated or replaced by another one, the bot no longer functions properly and must be retrained according to the new version of the user interface. This may be manageable for a few processes but certainly does not scale to an enterprise level. Derek Miers, senior director analyst at Gartner and overseeing the Gartner Magic Quadrant for RPA, gave a by now infamous example at the Gartner Symposium in 2019:
“So, there’s a bank in southeast Asia that has 2,000 RPA bots on people’s desktops. They wish they could roll back the clock and never have done that. Because they don’t know which part of the bank is going to stop working on Monday morning, if they change an application.”
One of the advantages with RPA systems is that they are lightweight and easy to deploy. Often, business users can automate several of their processes without support from IT or other departments. Ironically, herein also lies the risk with deploying RPA: Once you make it available in your organization, you may quickly end up with many hundreds of automated processes with little possibility to keep track of them. Now you are facing the problem that any changes to any of your application may potentially break one or more automated processes with unknown consequences for the business, internal staff or, even worse, for customers. Like the bank in Mier’s example, this is not a situation that any head of IT or CIO would want to find themselves in.
Another aspect of the easy-to-deploy approach is that business end-users may create automated processes without following the proper security or compliance processes. These are users that may not even be aware that such processes or policies exist. Improper use or deployment may lead to data leaks, unauthorized access and other issues that are better handled by your IT and/or security department before they end up in the press.
What About AI?
Some RPA vendors are introducing AI or what some refer to as “cognitive capabilities” into their software. These offerings commonly go under the name of Cognitive Robotic Processing Automation (CRPA) and add capabilities for automating perceptual or judgement-based tasks. Yet, while the capabilities to use cognitive technologies such as speech recognition, natural language processing and machine learning can help companies automate a wider range of tasks, they do not address the basic resiliency problems of RPA. You simply end up with smarter technology that is just as brittle as before.
What to do instead of RPA?
Gartner indicated that RPA was in its “peak of inflated expectations” and would become obsolete already in their hype cycle published in 2019. Furthermore, they suggested that RPA is a band-aid to problems better solved with APIs, workload automation modern task scheduling platforms.
Although some RPA offerings support the use of APIs in addition to user interface-based automation, few companies with RPA deployments use it in practice. In the report ‘Automate or Die – Learn from The Official State of Automation’ by EMA, which surveyed over 1,000 business and IT professionals at midsize and large firms, it was found that only twenty percent of the organizations using RPA were moving towards using more APIs. A plausible explanation for this is that business users would not be capable of automating process using APIs and, at the same time, an IT department would see no reason for using RPA to implement an API integration. Even when used with APIs, RPA may be more trouble than it’s worth. According to a study from E&Y, between 30% to 50% of RPA projects fail. With nearly ten years of track record, there are few show cases of strong success among the tens of thousands of enterprise robot deployments.
In summary, if your system has an API, use it. Unless you happen to have an old system that you cannot get rid of and that does not have an API but has a stable user interface without changes, do not even think about using RPA.