Book Image

Learning Robotic Process Automation

By : Alok Mani Tripathi
Book Image

Learning Robotic Process Automation

By: Alok Mani Tripathi

Overview of this book

Robotic Process Automation (RPA) enables automating business processes using software robots. Software robots interpret, trigger responses, and communicate with other systems just like humans do. Robotic processes and intelligent automation tools can help businesses improve the effectiveness of services faster and at a lower cost than current methods. This book is the perfect start to your automation journey, with a special focus on one of the most popular RPA tools: UiPath. Learning Robotic Process Automation takes you on a journey from understanding the basics of RPA to advanced implementation techniques. You will become familiar with the UiPath interface and learn about its workflow. Once you are familiar with the environment, we will get hands-on with automating applications such as Excel, SAP, Windows and web applications, screen and web scraping, working with user events, and we'll cover exceptions and debugging. By the end of the book, you'll not only be able to build your first software robot, but you'll also wire it up to perform various automation tasks with the help of best practices for robot deployment.
Table of Contents (12 chapters)

Scope and techniques of automation

There are various techniques used and available to automate steps and processes in an organization where software systems are being used to accomplish certain tasks. Before we look at these techniques however, let us see what can be automated and what should be automated.

What should be automated?

There are a few aspects that have to be taken into consideration for choosing automation candidates. The following processes should be automated:

  • Repetitive steps
  • Time-consuming steps
  • High-risk tasks
  • Tasks with a low-quality yield
  • Tasks involving multiple people and multiple steps
  • And everything else!

We have found out what should be automated. Now the question arises what can be automated?

What can be automated?

In order to automate something, it needs to have the following characteristics:

  • Well defined and rule-based steps
  • Logical
  • An input to the task can be diverted to the software system
  • Input can be deciphered by software systems with available techniques
  • The output system is accessible
  • Benefits are more than the cost

Techniques of automation

There are various techniques available for automation and programmers have been using them for years to increase efficiency in enterprises:

  • Custom software: Developing new software to perform repetitive tasks.
  • Runbook: Runbooks are typically used for IT-based operations. They are a compilation of a set of commands or tasks that are performed for maintenance and other types of activities. Runbooks can be offline as well, often referred to as run commands for performing sets of tasks.
  • Batch: Batch files used to very popular. They used to compile a sequence of commands that could be run by a single click or command. They can also be scheduled to be run at a specific time using the scheduler.
  • Wrapper: Wraps around existing software or hosts client applications. The wrapper monitors activities in a client app and performs actions based on rules.

For example:

    • Putting validation on top of a mainframe application using hummingbird
    • Hosting a website inside a shell, navigation, and actions
  • Browser automation: Greasemonkey and many other web macro software helped in browser-based automation. It can be used to read from a website and save to a database. It can also write to fields based on rules. Using this technique, a whole website can be changed, and components can be added or removed from the website. Sometimes, it is also referred to as web scripting or web injections.
  • Desktop automation: Traditionally, desktop automation used to mean that multiple screens on a desktop were woven together to present a single screen, and if there was some data transfer from one screen to another, it could be done automatically. Recently, assisted Robotics process automation has also been considered for desktop automation by some companies.
  • Database/web service integration: In database integration, we read/write to a client database directly. In web service integration, we communicate with the client system using a web service: