Robotic Process Automation

What is Robotics Automation

Guest Author: Santanu Duttapic

A Data Scientist must understand the data in hand. Before diving deep into the oceans’ of predictive analysis, he/she have to pause and look at the enormous mass of messy data points (unstructured and structured) through the looking glass of analytic powers, domain knowledge, subjective understanding, skepticism of existing assumptions – to find solutions to business challenges. Data Scientists often spend lot of time wrangling, massaging the data and building various hypothesis.

 

Last summer while being on an assignment with a client in the Middle East, I confronted a mundane repetitive task. The lazy programmer within got better of me.  Only a lazy programmer will avoid writing monotonous, repetitive tasks. The tools and processes inspired by laziness sped up production. A subsequent search for solution led to the term ‘RPA’.

Robotics Process Automation (RPA) has been creating a lot of buzz in business world. In an organization back-office operations have lot of repetitive, routine tasks. Work areas are burdened with repetitive and time consuming processes. Human errors creep in while completing a process. Organization look to reduce costs, improve delivery, and ensure consistent quality, as an example, the time taken to deliver key customer service reports can be reduced. RPA mimics the activity of a human worker and carry out tasks within process. It can do repetitive tasks quickly as well as efficiently. Idle time thus produced can be utilized by human in other key areas for judgement, reasoning, decision making, interacting with customers, understanding emotional part of relationship.

What is Robotics Automation

 

 

 

 

 

 

 

 

 

 

 

 

What is RPA?

Robotic process automation (RPA) is the process of using a software with Artificial Intelligence (AI) and Machine Learning (ML) capabilities to handle high-volume, repeatable tasks.

Let’s understand each of the term in acronym RPA:

Robotics Process Automation Workflow

 

 

 

 

 

 

 

 

 

Why RPA?

Let me explain with a real life example. A Financial Institution has implemented a Credit Card Fraud detection system. It uses some rules to check a transaction whether it is fraud or not. Points which the system check are:

  • Last location of access

eg: Card is used far off from places where it usually use to be.

  • Usual amount of transaction

eg: Value of transaction of a person much more than usual amount.

  • Number of times wrong PIN entered

eg: Number of trials on PIN. It may be a case of someone who is not the legitimate user getting hold of the card & trying out PIN through trial and error.

  • Frequency of usage

eg: Frequent use of card rather than usual, to use maximum limit.

One of the ways to check fraudulent transactions based on above rules is to use human manpower. Humans spend lot of time going through each transaction and based on their understanding subsequently categorize it as fraudulent or not.  It’s a repetitive task, checking the same rules whereby human errors might creep in. Such things use to happen prior to arrival of process automation. Presently, 95% of such activities are done in an automated way and remaining 5% is termed as anomaly which need human judgement to categorize it as suspicious or not.

Another example is ‘mailing existing customers about a new product offering’.

 

RPA Tools:

There are various tools to implement process automation. Some of them are like:

  • Nice
  • EdgeVerve
  • Kryon
  • Pega
  • Workfusion
  • Redwood
  • Contextor
  • Softomotive
  • Kofax
  • Blueprism
  • Automation anywhere

Most of them need license for using the tool. You may have to request the owner for getting a trial version.

Let’s visualize the RPA tools landscape –

Forrester Wave of RPA

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Benefits of RPA:

RPA provides a competitive edge to business by reduce their operating margins through headcount saving, better turnaround, greater compliance & service quality. Some of the key benefits of using RPA are listed below: 

Meeting the Compliance Requirement

The RPA is a process which follow the SOP. So the task are performed exactly the same way, each time. It generates audit trails that can be used as an extra level of assurance during testing and production.

High Accuracy with Quality

RPA removes human involvement in repetitive tasks, thereby removing possibility of human errors. There is a high level of accuracy that comes in. Robotic FTEs are deployed into existing transactional systems operating various processes in exactly the same way as human FTEs. Limitation regarding human FTE can be avoided through various ways.

Productivity

RPA can be used  24/7, 365 days a year. There is no attrition. This leads to reduced cycle time and enhanced productivity.

Scalability and Flexibility

RPA can replicate robotic tools across geographic boundaries, SBUs and provide a new level of scalability and flexibility.

 

Components

First we have to understand each component of a RPA tool. Components varies across tools, but the underlying concept is same.

The components may be broadly divided into four categories:

  • Recording

Here you do not create any flow charts. It allows users to record mouse movements and key board activities and automation scripts are produced.

  • Scraping

Scraping means extracting data out of a desktop application or web and laying it out in a structured manner. There are screen scraping which is used for desktop application and data scraping used for web application.

  • User Events

User Events are events produced by users. A keystroke, mouse movement are examples of user events.

  • Variables

Variables act as mediators between two activities. They help in data manipulation.

 

Hands on RPA 

Let’s create a simple RPA project.  Task can be like following:

Develop an automation process which read the subject line of a mail. Get all the names, prices, features of a product from a e-retailer site in a csv format and then mail to a email id.

RPA Example

 

 

 

 

 

 

 

 

 

 

RPA Example 2 RPA Example 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Let’s understand what is happening here. There is a sequence pane which controls the flow of each sequence. We get the sequence component from Control Flow.  Then the automated process is reading the top most unread message through Get IMAP mail message.  IMAP is a component under mail activity which help in reading mails. Here it is reading the subject line of the topmost unread mail which is also the name of queried product. For each mail it is doing some activity. The activity it performs is Data Scraping. It opens the browser, extract the required data. Here it is extracting Name, URL, Price and Feature of queried product in the site across all relevant search pages. When it reaches the last page, “Sorry no search result found” is displayed and search activity is finished. Then the automated process is storing the scraped data in a csv file. This is performed by Write CSV component in activities pane. The csv file is mailed to a mail id.  SMTP Mail message help in this activity.

We need to configure properties of Get IMAP like ports, Server, login credentials. Similarly, for SMTP we need to configure properties like Email, Host: port, Server, Login credentials, Receiver, Sender.

 

Let’s see it in action through a video:

First we have to mail with name of queried product in subject line eg, iPhone. The automated process will scrape data from a e-retailer website all the models of iPhone available, url, price etc. and store it in a csv. Then it will mail with a particular subject line and body the saved csv file as attachment. We can similarly do it for other products as well. You can try on your own and let me know if you face any challenges.

RPA saves time and accurately perform the activity of reading the subject line of mail, which is our queried product, scraping website across a number of pages, getting relevant data, saving in a csv file and mailing to relevant mail id.

RPA Market Size

 

 

 

 

 

 

 

 

End Notes

The arena of Robotics Process Automation is quite fascinating. Artificial Intelligence and Robotic Automation is set to change the phase of our upcoming future world. The scope of future in this field is widespread and one can predict that within a very short of span of time RPA is going to crawl up into many sectors of industries, medicine, research and development, banking, IT sector and much more.

 

Profile Status
ACTIVE
Profile Info
 

Kalyan Banga226 Posts

I am Kalyan Banga, a Post Graduate in Business Analytics from Indian Institute of Management (IIM) Calcutta, a premier management institute, ranked best B-School in Asia in FT Masters management global rankings. I have spent 14 years in field of Research & Analytics.

5 Comments

  • Noel Reply

    March 28, 2018 at 6:21 am

    Hello Kalyan,

    Thank You so much for this blog. It helped me lot. I am a Technical Recruiter by profession and first time working on this technology was bit tough for me, this article really helped me a lot to understand the details to get started with.

    Excellent tutorials – very easy to understand with all the details. I hope you will continue to provide more such tutorials.

    Obrigado,
    Noel

     
    • Shan Reply

      May 28, 2018 at 8:17 am

      Thank you Noel for the feedback. I draw inspiration from your appreciations.

       
  • Irene Hynes Reply

    May 26, 2018 at 9:33 am

    Hi Santanu,

    Great info! I recently came across your blog and have been reading along.
    I thought I would leave my first comment. I don’t know what to say except that I have

    You may not realize it, but your question is vague. The simplest answer is that there is already an automated tool that brings padstacks from the CL into your design. It’s Library Services. Then to replace them within the PCB design is another issue.

    It would be helpful to know exactly what you are trying to do, and why. I say this because there are several ways to accomplish what you trying to do, but the details make all the difference.

    Each of the following is slightly different:

    – You want to replace one or just a few selected padstacks which have been locally modified with the default padstack of the same name from the CL.
    – You want to replace all padstacks on a PCB design with a padstack of a different name from the CL.
    – You want to do a custom modification to a padstack in the CL, give it a new and different name from the one it was created from, and then replace some padstacks on the PCB with the new one.

    Excellent tutorials – very easy to understand with all the details. I hope you will continue to provide more such tutorials.

    Regards,
    Irene Hynes

     
    • Shan Reply

      May 28, 2018 at 8:10 am

      Thank you Irene for your valued suggestions. It will be helpful if you elaborate your thoughts a little more..

       
  • Vidit Mehra Reply

    June 8, 2018 at 9:06 am

    […] by /u/FusionAnalyticsWorld [link] […]

     

Leave a Comment

fifteen − 5 =