Robotic Process Automation: Implementing Traditional and Cognitive RPA Tools
In 2018, RPA became one of the fastest growing segments in the enterprise software market, according to Gartner.
RPA is a software solution for automating mundane business tasks nobody likes. By implementing a digital workforce, companies can become more efficient and cut costs. For instance, an Infosys BPM case study reveals that automating loan and payment administrative tasks resulted in a 30 percent decrease in employee effort and saved over $1.5 million in 18 months.
But RPA has stepped beyond simple repetitive tasks with the introduction of Cognitive Automation. This type of RPA can handle tasks that otherwise require complex decision making or human involvement. But businesses willing to begin automating may be confused by all the implementation options.
So in this article, we’ll explain how RPA works and the types of RPA, giving some advice on how to implement each of them.
What is RPA software
Robotic Process Automation in a nutshell is the practice of using a software bot that can replicate or perform tasks in place of a human employee.
A lot of office tasks have a distinct flow of actions, like, collect data > filter out required items > transfer prepared data to some destination, e.g., a spreadsheet. If there is a clear set of actions, an RPA bot can handle such tasks by memorizing the steps and applying given rules to the process. As a result, we can reduce manual effort for completing mundane work like invoice processing or document transfer.
This form of RPA, also called traditional RPA, has been around for over two decades. And the software market has developed numerous out-of-the-box solutions for typical business tasks, allowing businesses to avoid customization and apply RPA to their workflows.
However, traditional RPA is kind of limited in terms of task complexity, since bots operate using a predefined set of rules, which means they can’t respond to changes or make decisions. For example, if you change a file’s destination folder, a traditional RPA bot won’t be able to complete the task. It will need a new rule for this case.
That’s where Cognitive Automation bots come in handy, as this type of RPA can solve more complex tasks. But, before talking about each type and its capabilities, first let’s discuss how RPA software works in general and then highlight the differences and individual specifics.
How Robotic Process Automation works
Both types of RPA have to be prepared before they can complete a task. So, the whole process can be divided into three phases:
- installing and training the bot to complete specific tasks,
- setting up an operational model, and
- and orchestrating the digital workforce.
Let’s look at every step.
RPA bot training
Traditional RPA was designed to be used by non-tech users. So, training a robot to complete a certain task requires no programming skills. Most RPA software can be installed on a user’s PC and “trained” via a dedicated user interface by the user themselves.
This is an example of the UiPath RPA interface. Here, the tabs in the center represent a sequence of actions the bot has captured while the real user was performing a task. These actions are precisely the ones the bot will take when performing the task on its own.
The real beauty of it is that the RPA industry was built around the needs of office workers. Major RPA software vendors have considered most routine work scenarios and their products are ready to be “trained” out of the box. That’s why, for the most part, there is a little to no need of customization or specific RPA training.
Things aren’t that simple for cognitive automation. The biggest difference between traditional and cognitive automation lies in training. While any person can train a traditional bot to replicate the task, cognitive automation training involves complex technologies like machine learning to train the bot. In this case, training the bot will require datasets and machine learning models in conjunction with other AI technologies and cognitive RPA will most likely require dedicated engineering effort. We’ll discuss this later in this article.
The second point is the operation model. RPA software differs by the degree of human involvement in its work. Operation models consider attended and unattended RPA.
Attended RPA software requires a user to trigger the program to start or stop doing its work. In most cases, there is some sort of “start/finish” button in the software interface. Nothing complex here.
Unattended RPA runs in the background (most often from a server) and doesn’t require any action from a human to start operating. Instead, unattended RPA uses a trigger event that serves as a signal to start completing the task. This type of operation is convenient when there is a daily/weekly/monthly routine or a group of smaller tasks that has to be completed in a sequence.
However, unattended bots still require supervision of their operation. In simple words, even if the bot runs from a server, there is always someone who installs it there, gives initial instructions, and curates multiple bots. That’s where RPA orchestration kicks in.
RPA programs can be used on a large scale, operating on thousand devices, and automating numerous and varied tasks at a time. Orchestration interfaces are used as an administrative tool for RPA, allowing the user to switch on/off multiple bots, divide them into groups, and prescribe workflows.
Now let’s discuss each type of RPA in detail, to understand their capabilities.
Traditional Robotic Process Automation: mature but limited technology
RPA software in its traditional form was developed to automate the simplest tasks for back office workers. As we already mentioned, such software robots can perform only those tasks that have a distinct sequence of rather simple actions. Traditional RPA software uses screen scraping (or screen capture) to memorize the sequence of actions. And then, it runs a script that reproduces the sequence over and over.
Such systems are also called rule-based because they require a set of rules to operate. A common RPA task like collecting data and transferring it to another destination will require such input as a bare minimum:
- source of data (XML, Spreadsheets, Google Docs, MS Docs, Emails, etc.),
- data items to collect (e.g., client name, transaction size, order details, whole documents), and
- transfer destination (CRM, ERP, SCM software, or any other database).
To make any decisions on its own, RPA usually uses if/then statements as rules, e.g., if X happens, do Y. These statements form a decision tree the robot will use to complete the task.
A decision flowchart of an RPA software
The screenshot above represents a simple decision tree an RPA bot can operate on and the user interface for its configuration. While it looks very basic and kind of limited in terms of complexity of the task, rule-based robots cover a wide variety of business tasks across different industries.
For example, Max Healthcare, a healthcare provider based in New Delhi, India, had a problem problem processing client data manually, namely, patient claims processing and data reconciliation between healthcare systems. Implementing an RPA solution, Max Healthcare managed to save nearly 65 percent of the time it took to process manually.
Another case is from Ryder. a leading transportation and logistics company. The company uses RPA software to improve their transportation planning by automating data collection and transferring to their legacy transportation management systems. Additionally, RPA is used to analyze appointment scheduling data on carrier websites.
Such cases demonstrate the diversity of RPA software applications for back office operations. But what about tasks involving more cognitive activity?
Cognitive automation: advanced but requires case-specific research and development
In the last decade, data science has made a giant step towards popularization of artificial intelligence (AI) and machine learning (ML) technologies. In short, AI gives machines some cognitive capabilities. Machine learning means utilizing data to train algorithms to perform complex tasks, which, as the result, should mimic human cognitive processes. So, the ideal result for machine learning use is preparing a software that’s capable of making decisions based on the data, not on the rules provided.
However, machine learning also finds its applications in tasks that seem easy for a human, but are extremely complex for traditional software. For instance, it’s almost impossible to program an algorithm capable of transcribing human speech. But with machine learning these tasks become achievable for bots as well.
A combination of RPA and artificial intelligence gave birth to a new concept of technologies called Cognitive Automation. Cognitive Automation is a relatively new field of automation technology. Let’s discuss some of the underlying technologies and understand where they can be used.
Natural Language Processing (NLP) and Sound Processing
Natural language processing or NLP is a subset of AI that puts computer programs to work understanding human language. This is done by training a software program to distinguish spoken words, written text, and recognize syntax to make use of human language. Here, we can break the software applications in two categories:
Structured and semi-structured language analysis. If language in a written form appears to be structured, it’s easier to understand by the software program. NLP applied to an RPA bot can be used to analyze structured and semi-structured text in various document types, like claims, invoices, contracts, etc.
Processing of unstructured spoken or written language is the way to handle unstructured language data such as human speech, emails, messages, etc. This form of analysis trains bots to understand words and semantic relations between the words resulting in making sense of human speech. The simplest examples are virtual assistants and chatbots used anywhere, starting from our smartphones to eCommerce customer support.
What are business use cases of NLP based robots?
One of the examples is the analysis of contract details. A bot can be trained to extract some entities from contract documentation using language processing. The bot will identify the parties involved, key data points and clauses in the contract, and drag this data to the ERP system.
Another common use case is call center automation. Currently, virtual assistants aren’t capable of handling complex inquiries coming to customer support. In this case RPA, can act as an intermediary between the customer and a customer support agent, providing basic information, and answering simple questions. Whenever human intervention is required, RPA can connect human agents to a conversation. This would reduce mundane tasks at call centers.
Computer Vision and Optical Character Recognition (OCR)
Computer vision is a branch of data science that deals with training machines to recognize objects on images. These objects may vary from letters written on paper (optical character recognition) to real world objects like road signs. The same goes for artificial or digital objects – think of software program interfaces.
Applied to RPA, computer vision can help with analyzing and sorting content that comes in a visual format. A couple examples:
Written text analysis. It can be performed using computer vision to analyze text from scans or photos. This can be used in the insurance or healthcare industries where written documents are still widely used. Or it can be used as a standalone process of digitizing papers.
Image recognition. Videos or images can be scanned to find real world objects. Image analysis is used across many industries, from detecting health conditions on MRI scans to sorting vegetables on farms. This type of RPA is also applied for security measures but remains prone to error and requires large investments to develop a working software program.
Tracking changes in the interface. A logical augmentation of traditional RPA can be done by applying computer vision to robots performing tasks across software programs. Using a rule-based robot will require retraining the bot every time there is an insignificant change in the user interface of a program it works with. A computer vision bot can be trained to recognize standard interface elements, eliminating the need to retrain bots.
The cognitive automation solutions market is young, so isn’t rich in out-of-the-box solutions at the moment. However, the major RPA software vendors offer their services for developing such tools. To name a few, these include Automation Anywhere, Blue Prism, Cognitive Scale, and UiPath.
To summarize the difference between cognitive automation and traditional, it is important to mention that each type serves its specific use case. But, currently, cognitive automation requires investment and engineering effort. At the same time, traditional RPA does its job well as the industry is mature and it has automation options for various business tasks.
Here, we’re stepping to implementation options, as both types significantly differ in terms of development, training, and budgeting. So it makes sense to describe two scenarios, and steps you should consider to implement different types of RPA.
How to implement RPA software: scenarios of implementation
The first step to RPA implementation is the same for both types of software. But it will determine the complexity of the implementation.
Define the problem. Every business deals with time-consuming tasks, like data transfer between disparate systems. The problem in this case is that employees waste too much time on manual extraction and uploading of data. In other words, there is a productivity bottleneck because of manual work that causes wasting of time and budget, and leads to errors and slow performance as well. That’s the problem we want to solve.
Analyze the process you want to automate. Defined problems may include several problematic workflows that need automation. Our task now is to understand whether you need traditional RPA or cognitive automation. Most likely, mechanical work can be easily automated by a traditional RPA bot, but there are several types of tasks that definitely need advanced systems. We’ll address those issues next.
So here, the scenarios of the implementation will differ.
First scenario: Implementing traditional RPA to solve straightforward tasks
As an example, say you’ve analyzed the task and revealed the following information.
The task: Your CRM is a legacy system that can’t communicate with other systems via APIs. Additionally, your CRM doesn’t read various file formats, so it can’t read XML or PDF character encoding. That’s why your workers spend hours manually reformatting data before uploading it into CRM.
Step 1. Document the process steps
Once you’ve defined the process you want to automate, the next step will be documenting each step an employee takes to perform the task.
For the given task, the steps may include:
- Log into databases and find required data.
- Upload the data.
- Convert separate file formats into a single one.
- Log into CRM.
- Upload reformatted files.
A step-by-step documentation will help you understand possible steps an employee takes to complete the task. Further, it will be easier to explain the task to an RPA software vendor or internal stakeholders in your company.
Step 2. Look at the RPA market
As we mentioned before, the RPA software market is pretty mature. There are countless vendors that suggest out-of-the-box solutions for the majority of business tasks. Some of them list over 800 task descriptions you can scan to find your specific task. Here are some of the biggest vendors.
- Automation Anywhere
- Blue Prism
- Pega Software
- Microsoft Power Automate
- HelpSystems Automate
These are the leading companies on the RPA market that have similar capabilities, so we won’t describe each one in detail. The main point here is that RPA software is mostly closed sourced. So you might also be interested in those software vendors that allow open source solutions.
To finish it up, the RPA market generally suggests solutions for enterprises. But RPA, by its nature a scalable technology, fits any company size. So, if your business task appears to be on the list of out-of-the-box solutions, contact a vendor to discuss cost and integration details.
Step 3: Evaluate integration costs
Quoting the cost of RPA, you’ll be able to estimate your budget on the project. Here you’ll need to calculate the profitability of RPA integration by comparing the costs provided by a vendor to costs on the manual processing.
Step 4: Train the bot and run a demo
Once you speak to the software vendor, you’ll learn how their RPA software is trained. We have described it in general terms, but there can be little differences depending on the process, operational model, and the vendor itself.
In most cases, your employees will receive specific education on how to train RPA on their own, using a dedicated interface. But if we talk about unattended RPA, this step can be omitted, as bots will be curated and trained via an orchestration interface. This function can be performed either by a software vendor or a hired professional.
Finally, if a demo brought you the expected results, you could continue with scaling RPA to automate additional similar processes.
Second scenario: Cognitive Automation integration
The second scenario occurs when we reveal that traditional RPA can’t handle the workflow. So based on our previous example with data transfer, it may look something like this.
The task: The transfer of data in the legacy systems requires your employees to manually collect, convert, and upload documentation. Some part of the documentation is stored as physical papers, which gives additional complexity to gathering data. So, as an extra step, your employees also manually digitize the text from papers. And only after that do they transfer it to the corresponding systems.
In this case, a cognitive automation bot can use optical character recognition to recognize written text from the papers, digitize it, and upload it to the CRM automatically. Besides that, here are main signs that may signal that you require cognitive automation:
- The task involves processing any unstructured data, visuals like images, videos, or audio files.
- Or it entails working with physical documents, handwritten texts, or scans.
- The task has an unclear flow with changing steps, for instance, changes in the user interface, file directories, etc.
- The task involves any interaction with humans (e.g., customer support).
- Your employees are making decisions based on data (e.g., insurance claims processing).
- The task includes extracting specific data from texts (e.g., contracts).
If something this list looks familiar, consider cognitive automation and a range of underlying AI technologies. What are the steps for implementation here?
Step 1. Elaborate on the task
As with the traditional RPA, cognitive automation will require you to understand the task you’re going to automate. This can either be a step in the process that requires cognitive automation, or the whole task.
After you define the task for a cognitive bot, the next step is documenting the activities you want the bot to perform. Based on our example, these would be to scan written text, single out required data items, and digitize them. The rest of the job with moving the documents and reformatting can be handled by the traditional RPA.
Step 2. Identify required AI technologies
Cognitive automation doesn’t use replication and screen scraping for capturing the process steps. Such technologies use machine learning models for training and are built for a specific business use case. So, you’ll also need to learn something about the world of AI technologies.
For example, scanning written text will require applying an optical character recognition to a bot. While understanding the words in the texts can be done with natural language processing.
However, unless you are a data scientist, you won’t deal with applying these technologies on your own. But it would be easier to communicate with a cognitive automation vendor and have a basic understanding of how it works.
Step 3. Look up for data science consultancy
Find a data science expert that will consult with you on the implementation of AI and ML based technologies. These are the experts specializing in training data-driven bots that can perform complex tasks, analyze unstructured data, and provide you with valuable insights.
In a nutshell, the training includes building a machine learning model and training it on the data sets specific to the given business task. As a result, a cognitive automation bot will be able to analyze written text without any human involvement.
Step 4: Estimate the cost on development and integration after initial prototyping
The hardest part of machine learning and data science projects is cost estimation. Understanding the cost of the project will basically answer your main question – “Is it worth it?” If you want to dive deep into the topic, you can read our article on how to estimate ROI for a machine learning project.
Here are a few points that may impact the cost of the project:
- Can we use some existing solution as groundwork or do we need to build it from scratch?
- Do we have corporate data to train a machine learning model?
- What are the actual costs of development?
- What are the costs of integration with an RPA solution?
For the most part, data science specialists can provide an estimate of AI-specific costs, like development, data collection, ML training, and RPA integration. But to understand the feasibility of the project, they’ll likely need to run experiments and build machine learning model prototypes. So you’ll have to consider these costs and evaluate whether this type of automation can bring a return on investment.
Step 5: Test prototypes to understand whether you need to move forward
Cognitive bots usually operate as unattended RPA as they work with the complex tasks and use data to learn how to complete tasks on their own. However, the training process is more difficult and time consuming than it is with a traditional bot.
So, after launching a prototype with the machine learning model, you’ll need to check how accurately the task is performed and whether it corresponds with your business requirements. In case the failure rate is too high, data scientists may declare that the project isn’t feasible or they need more data to increase the model accuracy.
Step 6: Integrate AI technology with RPA bot
Finally, when the training process is over, an AI technology will be integrated into the RPA process to handle the workflow.
As an end thought, there is a huge difference between the two types of RPA. While traditional RPA allows us to pick a solution from the market and easily finetune it for your business case, cognitive automation is built separately for the most part. That said, you need to evaluate the necessity in the AI solution and justify investments in it.
But, at the same time, cognitive automation brings more opportunities for automation. Consider the case of Productive Edge, a healthcare provider, whose combination of AI and RPA allowed for automated prescription management and saved $1.1 million over the course of a year.