How to Accelerate Our Processes Through RPA
_
This article was written by my co-worker Sandra Jaimes (QA automation analyst at Flux IT) and I. Enjoy the reading!
What Is RPA?
Robot Process Automation (RPA) is the set of tools that allows us to automate processes and tasks performed by people on a daily basis, such as sending an email to a contact list, logging into a system or downloading a PDF file that later has to be processed to generate a spreadsheet. In other words, RPA focuses on tedious daily tasks.
RPA robots utilize the user interface to capture data and manipulate applications just like humans do. They interpret, trigger responses and communicate with other systems in order to perform on a vast variety of repetitive tasks.¹
What Issues Does It Solve?
In the first place, the use of RPA allows us to digitally transform processes that can’t be easily implemented on systems, due to the fact that there’s no integration API or simply because what we want to automate is not under our ownership.
But it also…
- Frees collaborators from constantly doing the same tasks so that they can focus on higher-value work where the human decision-making capacity is more valuable.
- Allows us to scale the business, since once the robot is implemented, performing that task several times doesn’t require more people but it requires the instantiation of the robot several times instead.
- Speeds up times and mistakes are practically eliminated, making our robot more efficient. The RPA workflow results in an exact, precise and predictable response to the processes, which allows us to have greater control over the company’s activities.
What Can We Automate With a Robot?
There are many tools to implement RPA and each one of them stands out for a particular feature on the type of element we need to interact with, but, broadly, these are:
- Files or spreadsheets: we can create them or open them, extract their information or modify them.
- Legacy systems: it allows us to navigate and interact with desktop applications.
- Email automation: allows reading and sending emails.
- Phone calls: they can be integrated with some API for this task.
- Access to remote desktops: to operate remotely.
- API integration: It allows integration with preexisting systems through APIs.
- Desktop applications: for widely used tools such as the calculator, notepad, among others.
How Can We Implement It?
As mentioned above, there are different kinds of RPA tools, which can be classified both according to functionality and costs. We think that UiPath is in the lead since it provides us all the necessary range of functionality for a full automation of our processes.
Through the platform, we can start a new project to design a new automation process using, according to the complexity of the problem we need to address, some of these elements:
- Sequence diagram
- Flowchart
- State machine
These processes are made up of a set of defined activities, such as system, UI automation, web services or spreadsheet processing activities. The set of available activities allow us to cover all types of process development as well as to incorporate extra activities from their own repository or from external repositories.
For example, using pre-existing components, we can create a sequence of steps to perform an HTTP request, read the JSON response and download it to a datatable.
- Request HTTP (available within the web package)
- Deserialize JSON (available within the package: programming > JSON)
- Create datatable (available within the package: App integration-Excel)
Process Orchestration
Once we’ve automated our processes, it’s important to compose and execute them in a controlled way, UiPath Orchestrator is a web app that enables robot management in a centralized way as well as the creation, monitoring and execution of the processes. It also acts as an integration point with third-party solutions and applications through APIs that are exposed by the platform.
Among the main capabilities of the orchestrator we can find²:
- Provisioning: it creates and maintains the connection between robots and the web application.
- Deployment: it assures the correct delivery of the package versions to the assigned robots for execution.
- Configuration: it maintains and delivers robot environments and processes configuration.
- Queues: ensures automatic workload distribution across robots.
- Monitoring: keeps track of robot identification data and maintains user permissions.
- Logging: stores and indexes the logs to an SQL database and/or Elasticsearch (depending on your architecture and configuration.
- Inter-connectivity: acts as the centralized point of communication for 3rd party solutions or applications.
How Do We Use It?
With UiPath we can create projects that comprise one or more activities according to the process we want to automate. These activities are available resources within the UiPath interface and they allow us to create a step by step guide to complete a particular process’ automation.
The execution can be carried out manually or automatically through triggers that are configured, for example, to be executed at a specific date and time or with a particular frequency.
- We perform the web and app integration and publish our robot with UiPath Orchestrator.
- From the orchestrator (Jobs) its execution will be allowed, showing the different states the robot goes through (pending, running, successful).
Let’s Take a Look at an Example:
Let’s imagine that our goal is to create a data list with information gathered from a website and take it to a .csv file. We’ll create a new blank project, where we’ll build it following a series of steps:
- To successfully complete this process automation, we create a set of activities, taking “Sequence” as the main activity, and within it, we have the following:
- Within the “System activity” pack and the “Input Dialog”subpack, we take the “Input Dialog” activity.
2. We add the “For Each” activity, which is basically a cycle that performs a series of activities on each element of a collection until it completes the established limit value; in this cycle, we’ll go to the website, gather the data we need and store it in a record table.
3. Finally, we input the values collected from the datatable in a .csv file.
Conclusion
Acceleration and efficiency lead us to rethink the way in which we execute certain processes or practices that we consider natural, and which can be modified in order to take care of our collaborators, trusting them with more challenging tasks while scaling our business in a less costly way.
UiPath is a great product for that purpose since it has a shallow learning curve and it doesn’t require great skills to start. However, establishing an automation strategy for our processes demands coherence and a transformation plan that exceeds tools. There are many options to implement RPA, some are more specific than others, but they are all part of this strategy that must be defined and addressed.
We believe now is the perfect time to start thinking about our strategy and to execute it in pursuit of digital transformation.