Robotic Process Automation is currently being fêted as a transformational technology that is changing the way that business is done. Whilst some elements of that are definitely true, RPA shouldn’t be seen as the magic silver bullet that solves all the problems all of the time. RPA is a great technology, but it has inherent limitations in what it can do and will often require support from other technologies and approaches in order to get the best out of it. These are really important points to understand because, if expectations are raised too high, then your RPA project is bound to end in frustration and disappointment. So, let’s have a look at what those limitations are and how different approaches and technologies can be brought in to support and even enhance RPA’s capabilities.
The most obvious limitation for RPA software is that the robots are essentially ‘dumb’, by which we mean they will do exactly what they are trained to do, with unswerving compliance. Now, that is also clearly a huge advantage, and many businesses implement RPA purely to increase compliance and reduce errors, but it can also be a risk. If the robots are trained to do the process wrong, then they will do it wrong 100% of the time. If parts of the process, just as exceptions to the usual ‘happy path’, are missed out then the robots will grind to a halt. It is therefore essential to ensure that the processes are mapped correctly and that all of the exceptions are captured and considered.
Because the robots are ‘dumb’, each candidate process for RPA must therefore be rules-based and repeatable. This, in itself, introduces further limitations: the processes must have structured data as their input; and the robots cannot make complex decisions. Structured data includes spreadsheets, webforms, databases and APIs (Application Programming Interfaces), whereas unstructured (or semi-structured) data would include emails, invoices, contracts, etc – any document that has sufficient variability or ambiguity to confuse the robot because it contains natural language or looks slightly different each time. With regard to decision making, robots can make certain choices as long as they are relatively simple and can be calculated on a spreadsheet e.g. a choice whether to accept an applicant may depend on 10 weighted data points with a pass threshold. Where there are many different criteria and, particularly where the relationships between them are non-linear (e.g. a higher salary may have different weightings depending on where in the country the applicant lives) then RPA is no longer suitable to make that assessment.
Both of the above scenarios, unstructured data and complex decisions, could be addressed through the use of artificial intelligence. AI can take unstructured and semi-structured data and make it structured. It can also take in lots of data and create solutions that model those non-linear relationships. There are vendors that specialise in each of these areas, and some businesses have even developed their own solutions to cope with the challenge. Bringing AI into the mix significantly increases the amount of potential candidate processes that RPA can address, and should therefore be considered as an inherent part of anyone’s automation strategy.
There are also a number of other technologies which support and/or enhance the capabilities of RPA. Picking up again on the challenge of having structured data as the input to a process, it can be beneficial to create an online portal for customers or colleagues to enter the relevant data. Portals allow the data to be structured in a way that suits the subsequent automated process so that it can be as efficient as possible. However, the design of the portal needs to be considered carefully in case that they make the data entry too laborious or difficult for the customer. There is a fine balance between having the data in the right format and making it as easy as possible for the customer.
Workflow applications can also play a big part in an RPA implementation. Most RPA software has some workflow capabilities built in, but for complex processes, particularly those that run over many calendar days with lots of starts and stops, it may be best to use a separate application to control the flow of the work between the people and the robots. It is usually a good idea to think of the robots as the processors of the data (just like people are) and the workflow application makes sure that the data is in the right place at the right time.
Application Programming Interfaces (APIs) are small pieces of code that allow different applications to easily talk directly to each other, bypassing the User Interface (UI). Of course, RPA robots work predominantly at the UI level, therefore you might imagine that APIs ‘compete’ with RPA for which is the better way to access systems. But in reality, the two work very well together. RPA software can access APIs as well as the UI which means that the developer has a great deal of flexibility in how they automate a process. If all of the interactions can be achieved through APIs then there is no role for RPA, but if most of the work is done through UIs with only some of them accessible using APIs, then RPA is generally better at being the ‘lead’ solution. Anybody implementing RPA should certainly consider APIs as an additional tool in their overall solution.
The final complementary approach to expand and enhance the capability of RPA is (perhaps surprisingly) human beings. People can play an important role in both the implementation of RPA and delivering efficient processes. During implementation it is important to look first at how a process could be improved, in order to avoid automating a poor process. Being able to identify better ways of running processes is still the reserve of humans, although there are already some new solutions that are able to identify and map candidate processes. As discussed in the earlier paragraph about AI, humans may still be required to read complex documents or make complex decisions if AI is not viable at that time. And, of course, if you want to actually speak to your customers, humans are usually the best option.
So, when thinking about RPA, it’s really important not to think of it as a magic silver bullet. A great deal can be achieved with robots, but they can achieve so much more with a little help from some friendly tech and some competent humans.