Robotic Process Automation
RPA or Robotic Process Automation is the process of automating business processes, operations or tasks using robots to reduce human dependency. RPA helps in performing manual repetitive and time-consuming business tasks such as data entry, report generation, customer support, payroll processing and so on.
RPA is a popular automation technique used in industries such as banking & finance, e-commerce, BPO, healthcare, insurance, among others. As per the report of, Gartner published in June 2019, RPA revenue grew 63.1% in 2018 to $846 million and expects it to reach $1.3 billion in 2019.
Types of RPA
There are two types of RPA-
Attended Robots or Cognitive RPA – This type of RPA needs human interference to perform its tasks. Examples of such RPA are text and voice-enabled chatbots.
Unattended Robots or Simple RPA – This type of RPA does not require human intervention; they can perform tasks on their own. For example, any data entry task; an excel sheet of past one month’s orders for any physical store is fed to the bot and it is programmed to enter these entries into another database, this task can be done without any human help.
Phases of RPA
Following are the generic phases of RPA lifecycle–
- Analysis – In this phase, an analysis of what all business processes need to be automated is conducted. Typically, business analysts and RPA architects are involved in this phase.
- Development – Based on the requirements, the RPA development team develops the bots for automation. This development process is done using the readily available tools in the market, some of which will be discussed in the sections below.
- Testing – Once the bots are ready, they will go under the testing phase. Usually, a separate testing team is used to do the testing that is like any normal software testing life cycle.
- Deployment and Maintenance – After successful testing, bots will be deployed, and the maintenance phase will begin.
Following are three popular RPA tools-
- UIPath – This is one of the most widely used RPA tools in the market. It allows various trial versions for different sets of users. A basic version is always available at free of cost, users can then upgrade to enterprise version. It has a visual designer which helps the user to create tasks using drag and drop functionality.
- Automation Everywhere – This is one of the most used automation tools available. They have various pricing for products available based on the types of users. A community edition product is available for developers for free.
- Blue Prism – Blue prism RPA tool is founded by Blue Prism Group that is a company based in the UK. It offers a free trial of 30 days.
How do things work in RPA?
As explained earlier, RPA tools are designed to imitate repetitive manual business processes that can be anything from data entry to report generation. The goal of any RPA tool is to perform various clerical processes (such as user creation, e-mail auto reply, order processing, etc.) but not limited to these.
Let’s take the following example to understand the working of an important RPA tool called UIPath in a brief:
For any HRMS software, an HR manager (a business user) wants to add extra details (such as birth date, gender and PAN) of employees that are available in a CSV file, in the software. Now, this business user can automate this task of adding these details in the software and to do this, s/he will have to follow these steps and these steps will be taught to the UIPath tool using its various features:
- First, after starting the recording of an automation task, a user will give the location of the CSV file in UIPath.
- Then, the user will type the URL where the data entry tasks need to be performed. Let’s say the user enters the URL of the login page of HRMS software.
- The user will enter details of username and password to log in to the HRMS software.
- The user will then select a name from the CSV and find the same name in the software.
- Once the name has been found, the user will select the employee and click on the ‘Add More Details’ button.
- In the newly opened form of the ‘Employee Details’ section, the user will find three fields in which data need to be entered.
- In each of the three fields, data from CSV related to these fields will be entered.
- At last, the user will click on the ‘Submit’ button.
- The user will click on the ‘Logout’ button.
- The user will click on the ‘Run’ button in UIPath to execute this task.
Now, in this example, the user will have to select the UIPath feature to repeat this task for each entry of the CSV file.
Advantages of RPA
- Ease to Learn and Use – Many of the RPA tools have drag and drop features that are easy to learn, no specific programming knowledge is required. This helps even the less tech-savvy business users to perform automated tasks.
- Increased Speed and productivity – RPA tools help in automating generic and mundane tasks which can sometimes become boring for users. As the repetition reduces, speed increases.
- Save time and money – RPA reduces repetitive tasks which help in saving time and increasing speed. As tasks are performed by bots, the requirement of people for these tasks reduces which will help the organizations to save money.
- Better Accuracy – As mentioned earlier, tasks are performed by bots which eliminate chances of error. Except in the case where wrong instruction is given to the bot, it might create inaccuracy in performance.
- Flexibility – RPA tools can be used on any platform and for any software (on desktop, web and mobile).
Disadvantages of RPA
- Automation of Limited Processes – It is important to note that not all business processes can be automated using RPA. Some processes require human intervention at some point.
- Processing of Unstructured and Non-Digital Data – While creating automated processes, users need to make sure the data that is being provided for processing is structured. Unless you use perfect OCR technology, it is difficult for RPA tools to fetch data from a non-digital source such as paper.
- No Learning Ability – RPA performs based on the instruction given to them. Unless you implement Artificial intelligence and machine learning in RPA tools, they cannot learn anything on their own from the past data or experience.
Difference between Test Automation and RPA
RPA is very different from test automation tools used for software testing.
Test automation tools are focused on testing the application by creating various test scripts and running them to validate the test case. These tools require basic programming language and are used by testers and developers.
RPA tools are focused on automating various business tasks that are performed by various business users. These tools do not require programming language and are used by business users all over the organization.
RPA helps in reducing the human burden of conducting similar kinds of tasks every day, saving the time taken to perform such tasks and reduces cost, provides better efficiency, to name a few.