DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Enterprise AI Trend Report: Gain insights on ethical AI, MLOps, generative AI, large language models, and much more.

2024 Cloud survey: Share your insights on microservices, containers, K8s, CI/CD, and DevOps (+ enter a $750 raffle!) for our Trend Reports.

PostgreSQL: Learn about the open-source RDBMS' advanced capabilities, core components, common commands and functions, and general DBA tasks.

AI Automation Essentials. Check out the latest Refcard on all things AI automation, including model training, data security, and more.

  1. DZone
  2. Refcards
  3. Getting Started With Robotic Process Automation
refcard cover
Refcard #365

Getting Started With Robotic Process Automation

Technologies such as artificial intelligence (AI), machine learning (ML), and natural language processing (NLP) have led the way to software robots that reduce the manual, time-consuming, and repetitive actions performed on digital platforms. The concept of automating tasks on digital platforms is called robotic process automation (RPA). RPA is a software robot that interacts with computer-centric processes and aims to introduce a digital workforce that performs repetitive tasks previously completed by humans. This Refcard introduces RPA technology, how it works, key components, and how to set up your environment.

Free PDF for Easy Reference
refcard cover

Written By

author avatar Lahiru Fernando
Country Director\ RPA Lead (Asia Pacific), Boundaryless Group
Table of Contents
► Introduction ► About RPA ► RPA: Key Methods and Techniques ► Important Considerations ► Getting Started With Robotic Process Automation ► Conclusion
Section 1

Introduction

Automation isn't new. Automation is a technology that dates back decades and has evolved over the years. For example, the term "robot" was first used by a Czech writer named Karel Kapek in 1921. Since then, there have been many instances where new and innovative solutions were introduced to ease tasks performed by humans — technologies such as autonomous vehicles, AI systems, chatbots, drones, and many more.

This evolution took place mainly around physical robots. However, technologies such as artificial intelligence (AI), machine learning (ML), and natural language processing (NLP) have led the way to software robots that reduce the manual, time-consuming, and repetitive actions performed on digital platforms. 

The automation of digital platforms started with technologies such as screen scraping, workflow automation, and artificial intelligence. Screen-scraping technologies create a bridge between current systems and incompatible legacy applications, allowing easy data extraction. Workflow automation tools specific to different software applications enable users to automate certain manual actions within the application environment. Further, introducing artificial intelligence into digital platforms enabled computer systems to perform tasks in multiple application environments using pre-trained human intelligence. 

The concept of automating tasks on digital platforms is called robotic process automation (RPA). RPA is a software robot that interacts with computer-centric processes and aims to introduce a digital workforce that performs repetitive tasks previously completed by humans. 

Software solutions are designed to ease the many tasks that we do. But software solutions still evolve around human input all the time. Have we ever thought about introducing a digital assistant to interact with the same application we created without human involvement? A digital assistant who works on our own computer, working in the background to perform the same tasks we do? We can easily build digital assistants who perform our daily actions — without the need for highly technical knowledge. We can use the same technology in our personal lives too.

Section 2

About RPA

Today, RPA is gaining more and more attention as it revolutionizes the way we work. Many organizations are investing in automating high-volume, repetitive, mundane activities to save many human hours for more value-added activities.

What Makes RPA So Powerful? 

RPA isn't just one technology. RPA robots can use AI, ML, computer vision, NLP, data analytics, and deep learning to expand their capabilities beyond the stretch of our imagination. The joint force offers many benefits for organizations, such as: 

  • Working 24/7 with high accuracy rates
  • Ability to scale and implement quickly using existing infrastructure
  • Ability to mimic human actions on any digital platform without any change to existing applications
  • Rapid return on investment (ROI)
  • Improved service delivery and customer satisfaction
  • Improved process efficiency
  • Better tracking of the performance of the robots through quick and easy dashboards

Current Trends in RPA 

RPA improves efficiency and shifts the focus towards more valuable work. Digital transformation is accelerated when complementary technologies like artificial intelligence and machine learning come into play. 

RPA continues to grow. According to a quantitative study conducted by UiPath, State of the RPA Developer 2022, 91 percent expect their organizations to hire more RPA developers in the next twelve months. It's visible that industries such as finance, technology, and insurance are leading the way in adopting RPA into their ecosystems.

Figure 1

Chart, table

Description automatically generated

Universities worldwide have already started teaching RPA to their students to prepare the next generation. According to the State of the RPA Developer Report 2022 by UiPath, 72 percent of the students who responded are already seeking opportunities in RPA after graduation. Also, six out of ten respondents who work in RPA started their career from a different domain; 84 percent of respondents believe RPA has a high potential for growth over the next five years. Further, the research also states that 90 percent of respondents believe that RPA has and will positively impact society.

One such example is the use case published here about automation for good implementation in child services. The process requires heavy documentation and interaction with multiple legacy applications. Some child welfare organizations tried hiring more caseworkers to take care of the tasks. However, studies have shown that increased staffing doesn't lead to better outcomes. The unattended automation solution developed for them takes care of all the documentation uploaded into their SharePoint system by classifying, extracting, and uploading the data into their legacy state applications. The process enables caseworkers to delegate routine tasks and focus more on the children to ensure they have a better future.

Today, RPA is headed towards understanding humans better than ever before. RPA robots now focus on understanding the business context around everything we perform to better automate manual actions. This concept is called semantic automation. Semantic automation enables faster development and enhanced reliability, thus providing more power to users and allowing them to develop their own robots. Further, automation today creates a positive social impact by increasing productivity in social services and addressing specific health conditions to support humans.

As there is a massive demand for resources and opportunities, let's now look at how to come up with the right automation solution to solve your business requirements.

Section 3

RPA: Key Methods and Techniques

Every RPA project is required to go through a set of stages during its journey. These stages are often called the lifecycle of an RPA project. Each step handles different aspects of the automation solution — discovery, build, manage, run, engage, and measure. Let’s look at each stage to better understand the activities performed and what technologies help to best complete the assigned tasks.

Discovery 

Identifying the best processes to automate, optimize, and standardize usually consumes a lot of resources and time. However, the power of science and AI makes discovery processes more efficient. The knowledge and experience of the employees combined with AI enable the organization to come up with a holistic 360-degree view of all the processes. 

There are many tools that users can use to record the process steps and analyze the recorded information to generate insights. Especially, the results generated by such process and task mining tools can be easily transformed into decisions to prioritize and identify the automation potential of the current processes. Further, the insights provided to the RPA Center of Excellence (CoE) team can solve process inefficiencies by introducing the right kind of standardization where necessary.  

Build 

The world of RPA today is moving towards the concept of having a robot for everyone. Hence, irrespective of an individual's background, they should be able to build and manage their robots. Today, there are low-code platforms for people with different levels of coding skills. Such development tools allow users to build scalable, adjustable, and intelligent automation solutions using a simple drag-and-drop canvas and dashboards. 

With the introduction of RPA, every technology company found ways to build components that allow easy interaction with its platforms. Apart from the tools, there are many readily available components, code snippets, and code templates available online for users to download and use free of charge. Users can easily use such components by plugging them into their solution to interact with multiple software applications effectively. 

Artificial intelligence is also a topic that we can't exclude when building automation solutions. Integrating AI, ML, and other NLP capabilities with RPA workflows is now just a couple of clicks away. RPA platforms have built-in AI capabilities, which we can easily configure and train to use in our automation workflows to perform any complex activity. This approach has allowed business users to easily combine their workflows with AI to perform more complicated actions, while technical users can use the same or build their own.

Manage 

As we manage our team, managing the virtual workforce is an essential aspect of the journey. Managing the virtual workforce usually includes centralized deployments, processes scheduling, automation workflows, checking for errors and inefficiencies, and scalability. Orchestration also enables global information management, such as credentials, globally used configuration values, etc., for better tracking and management. Such features provide a single centralized interface to apply changes to all automation solutions with just a click.

Run 

Virtual assistants execute your processes in any way you like — attended, unattended, or in a hybrid model. The flexibility offered by RPA technologies enables the virtual workforce to take up multiple background processes while executing foreground processes (which interact with UI elements). The attended robots work in the same machine as the user, helping their daily activities by conducting repetitive work simultaneously without interruptions. The unattended robots primarily work on backend processes that don't require any human involvement.

Engage 

Automation isn't just about automating repetitive activities. Robots today are also capable of interacting with people as chatbots to understand user requirements and act accordingly. The power of AI and NLP enables robots to perform human-like conversations with users and collaborate to optimize the entire process from start to finish. 

Today, automation platforms are configurable to monitor and communicate with web or mobile applications where robots can bring in exceptions and approvals to an employee to keep meaningful work flowing. This concept enables users to work on value-added activities while the robots work behind the scenes to bring required data to the screen as soon as the user needs it. An excellent example of using such apps is in a call center environment. Whenever a user receives a call, the robot captures the customer information either by listening and understanding the language or by automating specific inputs that bring in the required data to the app screen. This reduces the time involved for the operator to search and extract the required information from different applications.

Measure 

Embedded analytical capabilities of RPA platforms enable users to define KPIs and track the ROI of the automation program through different reporting platforms. Performance dashboards built on data generated by the robots allow process owners, CoE leads, and management to monitor the performance of their digital workforce. 

Govern 

Governance usually wraps around all stages described above to better control the quality of the automation solution. Quality control mechanisms may vary from organization to organization as they have their own best practices and standards, depending on the requirements. However, it's vital to have a governance model around all stages to ensure consistency across the organization.

Though every automation solution has a lifecycle, it doesn't ensure that we always build the most efficient solution for the process. Identifying the best procedures to automate requires a good level of research and understanding of the goal and process. Let’s have a look at some important considerations when deciding on automation. 

Section 4

Important Considerations

Business processes may not be in perfect shape all the time. The processes that we see in organizations were created many years back, and those processes can't be changed easily. However, these processes may have many manual and redundant steps that can be removed and optimized. The most crucial point to consider is that RPA isn't a nail that we can use to fix a broken process that humans perform manually. Every RPA project should focus on some level of process standardization before any automation efforts. Characteristics of a non-standardized process include:

  • Increased error rate
  • Decreased quality of routine tasks
  • Inefficient tasks
  • Excess repetitive tasks
  • Reduced functionality
  • High maintenance costs
  • Less reliable results
  • High variability in output
  • No clearly defined inputs and outputs

Automation of such processes won't gain the required outcome for the organization without the proper application of process standardization. Hence, it's necessary to go through standardization and technical feasibility frameworks to understand the automation potential and standardization needs. The following diagram illustrates a basic framework:

Figure 2

The figure shows that any process with repetitive manual activities, rule-based decisions, electronic input, and high exception rates aren't good candidates for automation. Such processes should undergo process improvements before applying automation. Further, we also need to consider any changes in the process and applications involved. Any expected changes require evaluation and reassessment before considering automation. However, any process that passes through all the criteria mentioned above is a good fit for automation.

As we now have an idea of what to consider before automation, let's look at what RPA can automate. RPA is a tool that mimics human interactions with digital platforms. However, with the help of different technologies, RPA can do even better. 

In general, an RPA robot can easily automate any of the following:

  • Automating reading and/or sending emails and attachments
  • Logging into different web or enterprise applications
  • Organizing files and folders according to business requirements by moving, copying, and creating files and folders
  • Automatically filling in forms in web or desktop applications to submit data
  • Reading and writing to any database
  • Analyzing data available on different platforms
  • Reporting across different systems
  • Scraping data from web applications
  • Collecting and analyzing IoT data 
  • Performing simple and complex calculations
  • Extracting data from structured, semi-structured, and unstructured documents using templates, regex, and artificial intelligence
  • Collecting social media statistics
  • Automating customer service in call centers, bank counters, etc.
  • Automating standard letter writing 
Section 5

Getting Started With Robotic Process Automation

Today, most small, medium, and large companies are adopting automation. Sometimes, introducing automation isn't straightforward because of the state of the processes, as we discussed above. However, we should develop standards, practices, and approaches to identify suitable processes to automate based on the framework provided.  

Pick a Few Tools to Start With 

There are many RPA tools available in the market. After thinking about the critical points and the capabilities required, narrow your search for the perfect platform. Find the platform based on the capabilities, budget, and how you plan to scale.

Setting Up Your Environment 

While we would like to cover every single approach in great detail, there’s so much space in one Refcard. Hence, this section will focus on setting up an example RPA tool so that you can begin your RPA journey. 

Registering for a Community Version 

UiPath offers a free-of-charge community license that anyone can use for learning and building small automation solutions. Navigate to UiPath Cloud Platform, create your free account, and sign in to perform the following steps. Once you sign in, your screen should look similar to the following screenshot:

Figure 3

 

Installing UiPath Development Environment 

On the Cloud platform, the right-hand side panel provides the option to download and install the development tool named UiPath Studio. 

Configuring Licenses for Your Orchestrator 

Navigate to the Admin page in the Cloud Platform and locate the Tenants Page. The Tenants page shows all the available Orchestrator tenants. Click on the “Edit License Allocation” option in the Tenant and assign all available licenses to the Tenant. 

Figure 4

The number of licenses available to you may depend on the version. For example, the community version will have fewer licenses, whereas the trial and enterprise versions will have a higher number of licenses.

Configuring Orchestrator User 

Click on the “Orchestrator” on the Tenants page or the home page to navigate to the Orchestrator. Follow the steps below to set up your environment:

  1. Navigate to Tenant and click on “Manage Access.”
  2. Find your user, and click on the “Edit” option.
  3. On the “General details” screen, provide the user roles, including username, first and last name, email address, etc. 
  4. We'd love to show how to enable both attended and unattended robots. However, for the scope of this Refcard, let's enable the attended robot for now. Click on the “Robot setup” option, enable “Attended Robot,” and finally, click on the “Update” button.

Now you have completed the user configuration. Next, let’s assign the user to a folder and complete the Orchestrator configuration.

Connecting UiPath Studio With Orchestrator 

Open the UiPath Assistant from the Windows Start menu. Once the application is loaded, you'll get an option to sign in. Sign in with the same account in which you created your Orchestrator instance. Now open the UiPath Studio, and you'll have all the access needed to start building your first automation solution.

Creating the First Automation Project 

There are many templates that you can select to start development. However, to keep it simple, create a blank process with any given name. Once you are in the created solution, you'll have several panels available to interact with.

The Solution panel contains all the files and folders in the solution. The Activities panel is where we mostly interact to drag and drop the required activities to build the automation workflow. Let’s do a simple document processing task using Forms AI and UiPath Studio.

  1. Go to UiPath Cloud Platform and navigate to the Document Understanding app through the navigation panel on the left. The following is a screenshot of the Document Understanding app.
    Figure 5

  2. Create a new project by clicking on the New Project option and providing a meaningful name while keeping other settings in the default configuration.
  3. Navigate to the new project you created.
  4. Click on the New button, select Using Forms AI (fixed layout forms) option from the dropdown, and create the Forms AI session. Once you provide the name, it'll take you to the Forms AI session and will display the following screen:
    Figure 6
  5. Drag and drop the documents to import them into the environment. Make sure all files added follow the same structure. The Forms AI will automatically predict the columns and extract them from the document. You can easily remove unwanted columns by clicking on the Edit option and deleting the field. Below is a refined structure of the Forms.
    Figure 7

  6. Navigate to the next document and click on the Predict button to capture the fields automatically based on your configuration of the first document. If any value isn't captured, you can highlight the text in the document preview and press the shortcut key of the respective field to add it.
  7. Click on the Publish button to publish the Forms AI model so we can use it in the Studio workflow.
  8. Copy the endpoint of the model created by clicking on the Copy Endpoint button and keep it in a safe place to use during workflow creation.

Now, let’s build the UiPath workflow in Studio. Start by using the model created to extract data from a sample document.

  1. Click on the Dependency Manager on the top ribbon and add: “UiPath.DocumentUnderstanding.ML.Activities,” “UiPath.OCR.Activities,” and “UiPath.IntelligentOCR.Activities” from the official feed.
  2. Click on the Taxonomy Manager from the top ribbon and configure the Taxonomy as shown in the following figure:
    Figure 8

  3. Drag and drop the Load Taxonomy activity and configure the output property.
  4. Create a String variable that can hold the sample document file path.
  5. Drag and drop the Digitize Document activity and configure the input and output arguments.
  6. Place the Data Extraction Scope activity and configure the input and output properties using the variables already created.
  7. Configure the Document Type ID field with the value "Finance.Incoming.Form4," which you can get from the Taxonomy as per the above screenshot.
  8. Place a Machine Learning Extractor within the Data Extraction Scope; configure it using the API key, model endpoint, and matching fields as shown in the following screenshot:
    Figure 9
  9. Now place a Present Validation Station activity below the Data Extraction Scope and configure it using the variables we already created for digitizing and extraction.
  10. Lastly, run the process and review your output.
Section 6

Conclusion

RPA technology has evolved from simple application-specific automation scripts to using multiple state-of-the-art technologies. RPA today has plenty of potential in shifting the way businesses operate. 

We explored how RPA combined with artificial intelligence and machine learning enables companies to automate critical processes during the Covid-19 pandemic. Many companies started their RPA journey during this period and could successfully navigate through the operational challenges.

As demand grows for RPA, universities worldwide are preparing the next generation of the workforce with RPA knowledge and skills. As RPA revolutionizes the way we work, we also need to identify the right candidate processes with higher automation potential. 

Like This Refcard? Read More From DZone

related article thumbnail

DZone Article

Maximize Kubernetes Security: Automate TLS Certificate Management With Cert-Manager on KIND Clusters
related article thumbnail

DZone Article

Combatting the 3 AM Ransomware Menace
related article thumbnail

DZone Article

The Circuit Breaker Pattern: Fortifying Microservices Architecture
related article thumbnail

DZone Article

Exploring the Different Types of Cloud Computing Models
related refcard thumbnail

Free DZone Refcard

AI Automation Essentials
related refcard thumbnail

Free DZone Refcard

Getting Started With Large Language Models
related refcard thumbnail

Free DZone Refcard

Machine Learning Patterns and Anti-Patterns
related refcard thumbnail

Free DZone Refcard

Getting Started With Robotic Process Automation

ABOUT US

  • About DZone
  • Send feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.linkDescription }}

{{ parent.urlSource.name }}
by
DZone Core CORE
· {{ parent.articleDate | date:'MMM. dd, yyyy' }} {{ parent.linkDate | date:'MMM. dd, yyyy' }}
Tweet
{{ parent.views }} ViewsClicks
  • Edit
  • Delete
  • {{ parent.isLocked ? 'Enable' : 'Disable' }} comments
  • {{ parent.isLimited ? 'Remove comment limits' : 'Enable moderated comments' }}