Robotics Process Automation Course Guide
Robotics Process Automation Course Guide
(AUTONOMOUS)
[An Autonomous College Affiliated to Periyar University, Salem]
[Recognized under Section 2(f) & 12(B) of the UGC Act, 1956]
[Accredited by NAAC with “A” Grade [CGPA=3.27/4.00]]
VIGNESH NAGAR, KATTERI - 636 902, UTHANGARAI (TK),
KRISHNAGIRI (DT), TAMIL NADU
PG & RESEARCH DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS
Unit I:
Robotic Process Automation (RPA): Fundamentals of RPA – Programming basics from
RPA perspective – Applying RPA – RPA development methodology – Architecture of RPA –
RPA and emerging ecosystem.
Unit II:
Basics of RPA – RPA benefits – Processes that can be automated – Types of Robots.
Automation and RPA Concepts: Business models for implementing RPA – Centre of Excellence
– Types and their applications – Building an RPA team – Approach for implementing RPA
initiatives.
Unit III:
Automation stages and the role of a Business Manager – Guidelines for tracking the
implementation success – Metrics/Parameters to be considered for gauging success – Chossing
the right licensing option.
Unit IV:
Introduction – Automation debugging – Automation library – Activities Packages –
Basic automation tasks – Text and Image automation. Setting up the Uipath Environment –
Introduction to Uipath – The User Interface – Keyboard Shortcuts.
Unit V:
Tables in RPA – Data Manipulation in Excel – Extracting Data from PDF – Using
anchors in PDF.
UNIT - I
ROBOTIC PROCESS AUTOMATION (RPA)
FUNDAMENTALS OF RPA
Robotic Process Automation (RPA) is a technology that uses software robots (bots) to
automate repetitive, rule-based tasks in digital systems. These bots interact with applications
and systems like humans do but operate faster and more accurately. Below are the key
fundamentals of RPA:
Rule-Based Processes: RPA is ideal for tasks that follow predefined rules.
Non-Invasive Integration: Bots can operate on top of existing IT infrastructure without
requiring changes to systems.
Scalability: Easy to scale up or down based on business needs.
3. Core Components
Software Robots (Bots): Programs that execute tasks like data entry, extraction, and
system navigation.
RPA Tools: Platforms like UiPath, Automation Anywhere, and Blue Prism that provide
bot development and management capabilities.
Workflow Designer: A visual interface for designing automation workflows.
4. How RPA Works
Recording Actions: Captures human actions like mouse clicks and keystrokes.
Rule Implementation: Encodes decision-making logic.
Rule Dependence: RPA is not suitable for tasks requiring judgment or creativity.
Initial Investment: May involve significant upfront costs for setup and training.
Process Optimization: Automation requires well-defined and optimized processes.
8. Future Trends
One of the GUI’s greatest strengths is its user friendliness. It is much easier to learn than other
operating systems. This is because text commands don’t have to be memorized, as the system uses
icons and clicks. Nor do users need to be familiar with programming languages. GUI systems have
dominated today’s computer market with their easy-to-use controls and modern appearance.
RPA allows people who do not write code to create workflows using wireframes, such as a GUI. An
RPA can provide users with a GUI interface, which they can use to organize, arranging the steps in a
data-processing workflow. Robotic process automation also allows people to interact with other parts
of the software through the GUI. (An RPA also records its interactions with humans, so that
appropriate responses can be automated.)
RPA can also be used to improve the data’s quality. As the amounts and types of data continue to
grow, robotic process innovation provides useful solutions for improving the results for all areas of
analytics. RPA, when augmented by ML and AI, can streamline the input (images and documents)
while improving the process by monitoring the RPA logs.
PROGRAMMING BASICS FROM RPA PERSPECTIVE
Robotic Process Automation (RPA) focuses on automating repetitive, rule-based tasks,
and while many RPA tools are designed for minimal coding, understanding basic
programming concepts can significantly enhance the development and efficiency of bots.
Below are the programming basics relevant to RPA:
1. Variables and Data Types
Variables: Used to store data values that can change during execution.
Example: username = "JohnDoe"
3. Loops
For Loop: Iterates over a collection of
items.
for file in file_list:
process_file(file)
While Loop: Repeats as long as a condition is
true.
while not task_complete:
check_status()
Use in RPA: Automate repetitive tasks, such as reading rows in a spreadsheet or
processing multiple files.
4. Functions/Modules
Functions: Reusable blocks of code to perform specific
tasks. def calculate_tax(amount):
return amount * 0.1
Modules: Group of related functions.
Use in RPA: Create modular workflows for better readability and reuse (e.g., a function
to validate email addresses).
5. Exception Handling
Try-Catch Blocks: Handle errors
gracefully. try:
open_file("[Link]"
) except
FileNotFoundError:
log_error("File not found")
Use in RPA: Ensure bots handle unexpected issues (e.g., missing files or invalid inputs)
without stopping the entire process.
6. File and Data Handling
File Handling: Reading, writing, and updating files.
Example: Reading an Excel file to process data.
Data Structures: Use lists, arrays, and dictionaries to manage and process structured data.
Use in RPA: Manipulate files, databases, and web elements (e.g., extracting and updating
customer information).
7. APIs and Web Services
APIs: Allow bots to interact with external systems and retrieve/send data
programmatically.
Example: Fetching weather data using an API.
Use in RPA: Extend functionality by integrating with third-party tools or services.
8. Logging and Debugging
Logging: Captures process details for monitoring and troubleshooting.
Debugging: Identifies and resolves issues in workflows.
Use in RPA: Ensure processes are transparent and error-free by maintaining logs and
debugging efficiently.
9. Object-Oriented Concepts
Classes and Objects: Create reusable components for bots with shared properties and
behaviors.
class Bot:
def init (self, name):
[Link] = name
Use in RPA: Advanced customization for complex workflows.
APPLYING RPA
Not all tasks are ideal for RPA. The best candidates share the
following characteristics:
Rule-Based: Clear, predefined rules and decision logic.
High Volume: Tasks performed frequently and in large quantities.
Repetitive: Routine tasks requiring
minimal variation.
Structured Data: Input data is organized
and digital.
Error-Prone: Processes susceptible to
human errors.
Examples:
Invoice processing
Data entry
Data migration
Report generation
Customer support ticket handling
2. Select the Right RPA Tool
Choose an RPA platform that aligns with your business requirements. Popular tools
include:
UiPath: User-friendly interface and extensive integrations.
Automation Anywhere: Scalable and cloud-compatible.
Blue Prism: Strong in security and governance.
Microsoft Power Automate: Seamless integration with Microsoft tools.
Considerations:
Scalability
Ease of use
Integration capabilities
Licensing costs
RPA works best when integrated with existing business systems and technologies:
APIs: Enable bots to interact with external systems programmatically.
OCR (Optical Character Recognition): Extract text from scanned documents.
AI and ML: Enhance decision-making for semi-structured processes.
6. Examples of RPA Applications
Across Industries Finance and
Accounting:
Invoice processing
Bank reconciliation
Tax reporting
Human Resources:
Employee onboarding
Payroll processing
Leave management
Customer Service:
Chatbot integration for query resolution
Customer data updates
Order Tracking
IT Operations:
Password resets
System monitoring
Data backups
7. Benefits of Applying RPA
Hyper automation: Combining RPA with AI, ML, and other technologies for end-to- end
automation.
Cloud-Based RPA: Leveraging cloud platforms for flexibility and scalability. Citizen
Development: Empowering non-technical users to build simple automation solutions
Conclusion:
By following these steps and principles, RPA can be successfully applied to drive
efficiency, reduce costs, and streamline operations.
RPA DEVELOPMENT METHODOLOGY
Robotic Process Automation (RPA) development follows a systematic methodology to
ensure successful implementation. Below is a step-by-step outline of the RPA development
process:
1. Discovery Phase
Example: An RPA bot enhanced with NLP can process customer service emails,
recognize intent, and route them to the appropriate team, reducing human intervention.
3. Hyper automation
Definition: Hyperautomation refers to the combination of RPA, AI, ML, business process
management (BPM), and other advanced technologies to automate complex business
processes end-to-end.
Role in RPA: Hyperautomation takes traditional RPA a step further by automating not
only tasks but entire workflows. It incorporates AI to handle exceptions, integrates data from
multiple systems, and adapts to dynamic changes in business processes. The result is a more
agile and intelligent automation framework.
Example: A customer onboarding process can be fully automated using RPA for
document gathering, AI for customer verification, and ML for fraud detection, ensuring a
seamless and efficient experience.
4. Cloud RPA
Definition: Cloud RPA involves deploying and running RPA bots in the cloud, leveraging
cloud infrastructure to scale automation solutions more efficiently.
Role in RPA: Cloud-based RPA offers flexibility, scalability, and cost-efficiency. It
eliminates the need for on-premise infrastructure and allows bots to be accessed and
managed remotely. Cloud RPA also integrates with other cloud-based technologies,
enhancing automation capabilities.
Example: Companies using cloud-based RPA can automate processes like invoice
processing or HR tasks without maintaining dedicated servers, making it easier to scale
automation across global operations.
5. Low-Code and No-Code Development Platforms
Definition: Low-code and no-code platforms enable users with minimal technical
expertise to create and deploy RPA bots and workflows using visual interfaces and drag-and-
drop functionality.
Role in RPA: These platforms democratize automation by allowing business users
(citizen developers) to build their automation solutions, reducing the dependency on IT and
accelerating the implementation of RPA solutions.
Example: A business analyst can use a no-code RPA tool to automate customer data entry
tasks, reducing the burden on IT and speeding up the automation process.
6. Integration with IoT (Internet of Things)
Definition: IoT refers to a network of interconnected devices that communicate and share
data with each other, often in real time.
Role in RPA: RPA can integrate with IoT devices to automate processes based on real-
time data from connected devices. For example, data from sensors can trigger automation
workflows, enabling bots to respond dynamically to changing conditions.
Example: In a smart warehouse, IoT sensors can track inventory levels, and RPA bots can
automatically reorder stock when levels drop below a certain threshold.
7. Block chain and RPA
Definition: Block chain is a distributed ledger technology that ensures data integrity and
transparency through decentralized and immutable records.
Role in RPA: Block chain can enhance RPA by providing a secure, transparent, and
auditable way of recording transactions. RPA bots can automate tasks such as contract
management, compliance checks, and data validation, while blockchain ensures the integrity
of the data processed.
Example: In supply chain management, RPA can automate inventory tracking, while
blockchain ensures the accuracy and security of transaction records.
8. Robotic Desktop Automation (RDA)
Definition: RDA is a subset of RPA that focuses on automating tasks on a single user's
desktop.
Role in RPA: RDA is often used in environments where user-specific tasks, such as data
entry, report generation, or customer support, need to be automated. It operates in the
background while the user continues working, improving efficiency without disrupting
workflows.
Example: RDA can automatically log a user into multiple systems, gather data from
different applications, and compile it into a report.
9. Digital Twin of an Organization (DTO)
RPA bots operate by interacting with the user interface (GUI) of applications, meaning
they don't typically require complex system-to-system integration (like APIs). The core
process involves:
1. Observing and Recording: A human user performs the task while an RPA tool
records the mouse clicks, keystrokes, and interactions with applications.
2. Developing a Workflow: The recorded actions are turned into a detailed, step-by-
step workflow or script. This is the set of rules the bot must follow. This step is often
done using low-code or no-code development tools within the RPA platform.
3. Execution (Bot Runner): The script is deployed to a Bot Runner, which executes
the automated task.
4. Monitoring and Management: A central Control Center manages, schedules,
monitors, and analyzes the performance of all deployed bots
5. Development Studio: This is the environment where a person designs and builds the
automation workflow, often using a drag-and-drop, low-code interface.
6. The Bot (Software Robot): This is the executor. It runs the pre-programmed steps to
complete the task.
7. Control Center (Orchestrator): This is the central hub that schedules, manages,
monitors, and tracks the performance of all the deployed bots.
Types of RPA
There are two main types of RPA bots, categorized by the level of human interaction
required:
That's a very important distinction in RPA! The choice between Attended and
Unattended determines where and how the automation is deployed. Here is
a breakdown of the two main types of RPA bots:
Feature Attended RPA Unattended RPA
Metaphor Virtual Assistant Virtual Employee
Human Required. The human user mustNot Required. The bot operates
Interaction trigger the bot and may need to autonomously from start to finish.
intervene or make decisions
during the process.
Location Runs directly on the human Runs on a dedicated server or virtual
employee's machine in the background (Back-
desktop/workstation (Front- Office).
Office).
Trigger Manual/Event-based. Triggered Automatic/Scheduled. Triggered by a
by a user's click, a hotkey, or a system event (e.g., a file arriving) or
specific event (like on a preset schedule (e.g., every
receiving a customer call). night at 11 PM).
Best For Tasks that are part of a larger High-volume, repetitive tasks that
process involving real-time require zero human oversight and
customer interaction or human can run 24/7
judgment.
● Attended bots boost the productivity of individual employees in real-time. They are
collaborative tools.
● Unattended bots handle automation for the entire organization at scale, managing
long, resource-intensive processes.
Many organizations use a Hybrid model, where attended bots on the front-end interact
with customers and then pass off standardized, high-volume work to unattended bots on the
back-end.
Benefits of RPA
RPA is highly effective for automating tasks that are repetitive, rule-based, high-
volume, and use structured data.
● Increased Accuracy: Bots follow instructions precisely, eliminating human errors
and ensuring 100% consistency.
● Higher Efficiency: Bots can work 24/7 and complete tasks much faster than a human,
leading to increased throughput and speed.
● Cost Reduction: Automating tasks lowers operational costs and provides a fast
Return on Investment (ROI).
● Improved Compliance: Consistent execution of processes makes it easier to comply
with regulatory standards and provides a clear audit trail.
● Enhanced Employee Satisfaction: Employees are freed from mundane, tedious tasks
to focus on work that requires human judgment, creativity, and strategic thinking.
● Accuracy: Eliminates human errors, ensuring $100\%$ consistency.
● Speed: Bots can work $24/7$ and execute tasks much faster than people.
● Cost Reduction: Lowers operational costs by automating time-consuming work.
● Employee Focus: Frees up human employees to concentrate on high-value, strategic
work that requires creativity and judgment.
Implementing RPA isn't just about buying software; it involves a structured, multi-
phase project, often referred to as the RPA Lifecycle.
The RPA Implementation Lifecycle
1. Discovery & Assessment (The "What" and "Why")
This is the strategic starting point where you decide what to automate and why.
● Process Identification: Identify business processes that are good candidates for
automation. The best candidates are usually:
o Highly Repetitive: Done frequently (daily/weekly).
o Rule-Based: Have clear, consistent steps with few exceptions.
o High Volume: Lots of transactions to process.
o Structured Data: Data inputs are consistent and predictable.
● Feasibility & ROI Analysis: Determine the technical feasibility of automating the
process and calculate the Return on Investment (ROI). You want to prioritize
processes that deliver the highest value quickly (known as "quick wins").
● Documentation: Document the process exactly as it is performed today ("As-Is"
process). This is critical for the next phase.
2. Design & Solution Architecture (The "How")
In this phase, you create the blueprint for the bot.
● Process Optimization: Before automating, simplify and standardize the current
process ("To-Be" process). Don't automate a bad process!
● Solution Design: The RPA Architect designs the technical solution, mapping out the
step-by-step logic, exception handling, data inputs/outputs, and how the bot will
interact with various applications.
● Platform Selection: If not already chosen, this is when you select the specific RPA
tool (e.g., UiPath, Automation Anywhere, Blue Prism) that best fits the requirements.
3. Development (The "Build")
This is where the bot is physically built using the chosen RPA tool.
● Bot Creation: The RPA Developer translates the "To-Be" design into a sequence of
actions, developing the automation script using the studio environment.
● Coding & Configuration: The developer configures the bot to perform tasks like
logging into systems, scraping data, applying business rules, and handling expected
errors.
● Modular Approach: Developers often use a modular approach, creating reusable
components to make the bot easier to maintain and scale.
4. Testing & Quality Assurance (The "Verify")
The most critical phase for ensuring reliability.
● Unit Testing: The developer tests small, individual components of the bot.
● System Integration Testing (SIT): Testing the entire workflow to ensure the bot
interacts correctly with all target applications (e.g., CRM, Excel, Email).
● User Acceptance Testing (UAT): The business user (the Subject Matter Expert or
SME) tests the bot to confirm it meets all business requirements and functions exactly
as a human would.
5. Deployment & Monitoring (The "Go Live")
The bot is moved from the testing environment to the live production environment.
● Deployment: The bot is securely installed and scheduled using the central Control
Center (or Orchestrator).
● Pilot Launch: The bot often runs in a controlled environment for a period, with
performance closely monitored.
● Monitoring: The team continuously tracks key metrics: transaction volume, error
rate, and time saved. This ensures the bot provides continuous value and runs
smoothly.
6. Scale, Optimization, and Governance (The "Grow")
This phase is about expanding the program across the organization.
● Optimization: Based on monitoring data, the bot is fine-tuned for better performance
and efficiency.
● Scaling: More processes are identified and added to the automation pipeline.
● Center of Excellence (CoE): A centralized team is often established to manage the
entire RPA program, set standards, provide training, and govern the development
lifecycle.
Processes that can be automated
The Different Types of Process Automation
Today’s RPA tools can execute scripts, have specialized tooling to automate complex
business processes, and they have the ability to interact with user interfaces. But RPA tools
go way beyond those basic capabilities. At a very high level, automation can be broken down
into four categories:
1. Front-End Automation
UI automation
2. Back-End Automation
API automation
3. Native Actions
Specialized actions that target specific business applications
4. Intelligent Automation
Machine learning & artificial intelligence for when more critical thinking is needed.
Combining these four types of automation gives users the ability to automate a wide variety
of tasks. And by including intelligent automation it introduces human decision-making logic
into the process.
Front-End Automation: UI Automation
UI automation provides the mechanisms to mimic human interactions with user interfaces
such as Windows applications and web browsers. UI automation capabilities generally fall
into three categories:
1. Legacy and Windows applications
2. Browser applications
3. Remote desktop applications via RDP, and others
The Windows and browser-based capabilities, for the most part, interact with the
underlying controls. For example, the automated action of a button click will cause a “button
click” event to be fired on that button. When interacting with a remote desktop, however, the
underlying application controls are not accessible to the remote session. Therefore, to mimic
a button click on a remote desktop, the RPA application needs to recognize graphical regions
that represent the button.
Pros of UI Automation
● Easy to use. Since UI automation mimics the steps that a human takes to complete
a task, a non-technical citizen developer can use it to automate their work.
● Only option to automate some applications. Some applications only provide a
UI. For example, a browser-based UI may be the only option available to the user to
interact with that application. UI automaton may be the only option available for legacy
Windows applications as well.
Cons of UI Automation
● Changes to UIs may break automations. User interfaces change frequently for
many reasons including improving the user experience or to add features. When a
UI is changed, it may break the automation. Sometimes changing the size of a
window may cause the application UI to reconfigure itself to provide a better user
experience which may also break automations.
● Automating the decision-making process. Many of the UI actions that are
performed are a result of some human decision-making processes which are not
necessarily captured in the action itself. To represent the thought process, the user
will need to extend the recording to represent the decision-making logic.
● Takes over the desktop. The UI automation task takes over the mouse and keyboard
to mimic the user actions. As such, the user cannot be working on the computer at
the same time.
Modern RPA applications include recorders. Recorders make it much easier to
develop UI automations. Recorders fall into two categories:
1. Macro Recorders
Macro recorders “watch” the steps the user is performing and then runs those exact steps
in the exact same order. While macro recorders make it very easy to create automation, it’s
also a “one and done” process that you can’t edit or update.
2. Step Recorders
With step recorders, you record each UI action that you need to perform. While it’s
more tedious to create automaton, it has many advantages over macro recorders. For
example, you can edit and update recordings, debug recordings, and most of all, you’re
able to introduce your thought process in terms of business logic into the recording—all
from within the recorder.
Back-End Automation: API Automation
API automation is used to reach out to application programming interfaces (APIs) to
accomplish a task. For example, you can use API automation to automate the transfer of loan
application information from a loan origination service to a loan processing service.
Generally, APIs are either web service APIs or HTTP based RESTful APIs. (Note that web
services are an older technology that is no longer under active development, and as such, may
be deemed obsolete.)
With API automation, the RPA application interacts with a pre-defined interface
provided by the external application to perform a task. Exchange of data is done using
standard data exchange formats such as XML or JSON.
As API automation involves the transfer of data, the API automation capability must
provide not only the capability to connect to APIs, but also the capability to process the data.
Pros of API Automation
● Robustness. One of the biggest advantages of API integration is robustness. APIs
rarely change, and even when the provider needs to update an API, they support the
older version of the API for some length of time. In addition, API interactions are
not impacted by changes to the desktop such as changing a window size or window
color scheme.
● Background execution. API automations can be executed while the user continues
to use their desktop.
Cons of API Automation
● Technical knowledge required. Working with APIs and common interchange
formats requires some technical knowledge. As such, API integration tasks target the
power user with some technical knowledge.
Related Content > RPA vs. API: Differences and Use Cases
Native Actions
Native actions provide user-friendly interfaces to automate activity against a specific
application such as an FTP application, Microsoft applications, databases, and more. While
UI automation and API automation are generally automations that can be used with multiple
applications that support the technology (i.e., an API or UI), native actions are designed to
provide a user-friendly interface to automate tasks against a specific application. A native
action is provided primarily for one of two reasons:
● The application is widely used in RAP activity, for example, email.
● The application does not provide a UI, nor a standard API, for example, databases.
While databases provide UIs to manage the database, in order to execute queries and
obtain results in a machine-readable format, the user essentially has to use specific
technologies such as database connections. In this case the native action is designed to
mask the complexity of working with that application.
Pros of Native Actions
● Easy to use. Native actions are probably the easiest to use as they are custom-built to
work with a particular application.
● Robustness. As they are custom-built to work with a particular application, they are
robust actions.
● Background execution. Native actions run in the background so the user can
continue to work using their desktop.
Cons of Native Actions
● Limited availability. As there are a very large number of applications that span
automation, it is almost impossible to provide native actions to all applications.
Intelligent Automation
Intelligent automation is designed to introduce “intelligence” into automation. Similar
to custom actions, intelligent automation is custom built. But unlike native actions, it is
custom built to satisfy a particular capability, in this case artificial intelligence (AI) and
machine learning (ML), rather than a particular application.
AI and ML are complementary technologies. They are used to aid in the decision-
making process. Some consider ML as the current state-of-the-art technology for AI, while
others consider ML the most widely used specialization of AI. The technology supporting AI
and ML is growing at a rapid pace supported by some of the biggest technology companies.
As such, the automation community is better served by RPA tools that integrate with industry
standard frameworks and industry specific solutions provided by companies that have the
expertise, rather than providing their own AI and ML solutions. In this sense, intelligent
automation is similar to a custom action that integrates with either a specific AI/ML
framework such as TensorFlow or [Link], or a specific intelligent solution that is provided
by experts in that solution space.
Attended vs Unattended Automation
No discussion about automation is complete without talking about attended vs
unattended automation. Unattended automation is an automated work item that can be
completed without the intervention of a human being. On the other hand, attended automation
requires human input at some point in the automated process. The human input could be as
simple as clicking a button or could include more complex scenarios requiring the filling of
forms, reviewing data, making corrections, and more.
When we think of state-of-the-art RPA, attended and unattended automation are
fundamental capabilities. When comparing attended and unattended automation to the four
types of automation discussed previously, they are not types of automation or the tools of
automation, rather they are one way to categorize the types of problems that RPA can solve.
Automate RPA
Automate is an RPA solution from Fortra. Automate has over 600 native actions that
span front-end automation and back-end automation, and a wide array of custom actions and
intelligent automation capabilities. It is a complete RPA solution that our customers count on
to transform virtually any business or IT process and brings together the applications that
keep their businesses running.
While Automate has many differentiating features, we would like to introduce a few
of our most powerful here. In peer reviews and industry publications, Automate is
consistently rated at the top for its ease-of-use. That’s because Automate’s no-code approach
makes building automation easy for citizen developers, while also providing advanced
options for power users to automate more complex tasks. The key advantages of having an
easy-to-use. RPA tool are twofold:
● Brings RPA to the citizen developer
● Minimizes technical debt
Another key differentiator is that Automate is simply RPA focused. There are many
complementary technologies to RPA, for example AI and ML, process discovery, workload
scheduling, capacity management, and the list goes on. In Automate, we believe in a best-of-
breed tooling approach. We strive to make Automate the best RPA tool that provides a
powerful API to integrate complementary technologies. Here too, the advantages are twofold:
● We have a singular focus – provide a solid RPA solution
● Customers can pick and choose the complementary solutions that best suit
their budgets and needs
Automate provides an innovative feature set and focuses on usability. Automate also
provides an innovative step recorder while our competitors almost exclusively provide macro
recorders when the limitations of macro recorders have been well documented. Our
innovative features focused on usability are also on display in our JSON action and our
approach to AI and ML.
And finally, in peer reviews Automate is constantly rated high in business value created.
When combined with our easy-to-use approach that minimizes technical debt, Automate
becomes even more attractive from a total-cost-of-ownership point of view. With this holistic
approach to automation, Automate allows users to get up and running quickly and see fast
ROI. Classification of Robots
The most common distinction is between fixed and mobile robots. These two types of
robots have very different working environments and therefore require very different
capabilities. Fixed robots are mostly industrial robotic manipulators that work in well-
defined environments adapted for robots. Industrial robots perform specific repetitive tasks
such soldering or painting parts in car manufacturing plants. With the improvement of
sensors and devices for human-robot interaction, robotic manipulators are increasingly used
in less controlled environment such as high-precision surgery.
By contrast, mobile robots are expected to move around and perform tasks in large,
ill- defined and uncertain environments that are not designed specifically for robots. They
need to deal with situations that are not precisely known in advance and that change over
time.
There is no clear dividing line between the tasks carried out by fixed robots and
mobile robots humans may interact with industrial robots and mobile robots can be
constrained to move on tracks—but it is convenient to consider the two classes as
fundamentally different.
There are three main environments for mobile robots that require significantly
different design principles because they differ in the mechanism of motion: aquatic
(underwater exploration), terrestrial (cars) and aerial (drones).
Robots for these three environments can be further divided into subclasses: terrestrial
robots can have legs or wheels or tracks, and aerial robots can be lighter-than-air balloons
or heavier-than-air aircraft, which are in turn divided into fixed-wing and rotary-wing
(helicopters).
Industrial Robots
One could argue that these are really automata and not robots. However, today’s
automata often rely on sensors to the extent that they can be considered as robots. However,
their design is simplified because they work in a customized environment which humans
are not allowed to access while the robot is working.
However, today’s robots need more flexibility, for example, the ability to manip- ulate
objects in different orientations or to recognize different objects that need to be packaged in
the right order. The robot can be required to transport goods to and from warehouses. This
brings additional autonomy, but the basic characteristic remains: the environment is more-
or-less constrained and can be adapted to the robot.
Additional flexibility is required when industrial robots interact with humans and this
introduces strong safety requirements, both for robotic arms and for mobile robots. In
particular, the speed of the robot must be reduced and the mechanical design must ensure
that moving parts are not a danger to the user.
The advantage of humans working with robots is that each can perform what they do
best: the robots perform repetitive or dangerous tasks, while humans perform more complex
steps and define the overall tasks of the robot, since they are quick to recognize errors and
opportunities for optimization.
Autonomous Mobile Robots
Many mobile robots are remotely controlled, performing tasks such as pipe inspec-
tion, aerial photography and bomb disposal that rely on an operator controlling the device.
These robots are not autonomous; they use their sensors to give their oper- ator remote
access to dangerous, distant or inaccessible places. Some of them can be semi-autonomous,
performing subtasks automatically. The autopilot of a drone stabilizes the flight while the
human chooses the flight path. A robot in a pipe can control its movement inside the pipe
while the human searches for defects that need to be repaired.
Fully autonomous mobile robots do not rely on an operator, but instead they make
decisions on their own and perform tasks, such as transporting material while navigating in
uncertain terrain (walls and doors within buildings, intersections on streets) and in a
constantly changing environment (people walking around, cars moving on the streets).
Efforts are being made to make systems more flexible, so that they can learn from a
human or adapt to new situations. Another active field of research addresses the interaction
between humans and robots. This involves both sensing and intelligence, but it must also
take into account the psychology and sociology of the interactions.
Humanoid Robots
Science fiction and mass media like to represent robots in a humanoid form. We are
all familiar with R2-D2 and 3-CPO, the robotic characters in the Star Wars movies, but the
concept goes far back. In the eighteenth century, a group of Swiss watchmakers—Pierre
and Henri-Louis Jaquet-Droz and Jean-Frédéric Leschot— built humanoid automata to
demonstrate their mechanical skills and advertise their watches. Many companies today
build
humanoid robots for similar reasons.
Humanoid robots are a form of autonomous mobile robot with an extremely complex
mechanical design for moving the arms and for locomotion by the legs. Humanoid robots
are used for research into the mechanics of walking and into human- machine interaction.
Humanoid robots have been proposed for performing services and maintenance in a
house or a space station. They are being considered for providing care to the elderly who
might feel anxious in the presence of a machine that did not appear human. On the other
hand, robots that look very similar to humans can generate repulsion, a phenomenon
referred to as the uncanny valley.
Educational Robots
Advances in the electronics and mechanics have made it possible to construct robots
that are relatively inexpensive. Educational robots are used extensively in schools, both in
classrooms and in extracurricular activities. The large number of educational robots makes it
impossible to give a complete overview. Here we give few examples that are representative
of robots commonly used in education.
Pre-Assembled Mobile Robots
These robots are relatively inexpensive, robust and contain a large number of sensors
and output components such as lights. An important advantage of these robots is that you
can implement robotic algorithms “out of the box,” with- out investing hours in mechanical
design and construction. However, pre-assembled robots cannot be modified, though many
do support building extensions using, for example, LEGO® components.
Robotics Kits
The LEGO Mindstorms robotics kits were introduced in 1998. A kit consists of
standard LEGO bricks and other building components, together with motors and sensors,
and a programmable brick which contains the computer that controls the components of the
robot.
The advantage of robotics kits is that they are flexible: you can design and build a
robot to perform a specific task, limited only by your imagination. A robotics kit can also
be used to teach students mechanical design. The disadvantages of robotics kits are that
they are more expensive than simple pre-assembled robots and that exploration of robotics
algorithms depends on the one’s ability to successfully implement a robust mechanical
design.
Robotic Arms
To act on its environment, the robot needs an actuator which is a component of a
robot that affects the environment. Many robots, in particular robotic arms used in industry,
affect the environment through end effectors, usually grippers or similar tools
Educational robots are usually mobile robots whose only actuators are its motors and
display devices such as lights, sounds or a screen. End effectors can be built with robotics
kits or by using additional components with pre-assembled robots, although educational
robotic arms do exist Manipulation of objects introduces.
Differential Drive
The robot is a small autonomous vehicle with differential drive, meaning that it has
two wheels that are driven by independent motors . To cause the robot to move, set the motor
power to a value from −100 (full power backwards) through 0 (stopped) to 100 (full power
forwards). There is no predefined relationship between the motor power and the velocity of
robot. The motor can be connected to the wheels through different gear ratios, the type of
tires on the wheels affects their traction, and sandy or muddy terrain can cause the wheels to
slip. Proximity Sensors
The robot has horizontal proximity sensors that can detect an object near the robot.
There exist many technologies that can be used to construct these sensors, such as infrared,
laser, ultrasound; the generic robot represents robots that use any of these technologies. We
do specify that the sensors have the following capabilities: A horizontal proximity sensor
can measure the distance (in centimeters) from the robot to an object and the angle (in
degrees) between the front of the robot and the object.
Centre of Excellence
RPA or Robotic Process Automation automates manual, repetitive, high-volume tasks
that humans perform every day. For example, an RPA could take over the task of entering
data into a spreadsheet. The robot or bot as they are popularly called would enter all the
information, exactly the same way, each time, saving you time and effort.
Another example can be an employee submitting a request to update his address,
contact information, etc., and the bot would automatically update it in all the relevant
database fields for various departments such as payroll, HR, IT, and so on.
As you can see, Robotic Process Automation is more about Automation Software and
not the shiny physical robots roaming around. RPA bots interpret, communicate with other
systems, and trigger actions to automate a wide variety of manual repetitive and rule-based
business processes. These bots are ‘trained’ to mimic human interaction and can interact with
any IT application or website in the same way a human would.
What is an RPA Center of Excellence (CoE)
RPA adoption is increasing by leaps and bounds across various industries. According
to a report by Grand View Research, the global RPA market was valued at USD 1.89 billion
in 2021 and is expected to grow at a CAGR of 38.2% from 2022 to 2030.
When done correctly, Robotic Process Automation provides many benefits to the
business otherwise it can be a costly overhead. Sometimes, organizations proceed to RPA
implementation without proper planning and fail miserably at it. This is where an RPA
Center of Excellence can be useful.
A Center of Excellence for RPA is a central unit that identifies automation
opportunities, builds use cases for automation, and provides structure, best practices, support,
and runs automation projects in an organization.
It helps a business achieve end-to-end automation of business processes by combining
people, technology, and processes together. It also measures the success of RPA initiatives in
an organization. The responsibilities of an RPA CoE are listed in the image below.
Unit :3
Automation stages and the role of a Business Manager:
RPA stands for Robotic Process Automation. Hearing the word Robotic, people assume
that physical robots complete the task. But what RPA actually means is - "It is the technique
of automating an actual business process to complete a task without the intervention of
human beings".
Robotic - Robots are entities developed to complete tasks performed by human.
Process - Process is a sequence of tasks combined to perform a meaningful action.
Automation - Automation is done to perform tasks without human intervention.
RPA Tools :
Blue Prism
Ui Path
Automation Anywhere
1. Identify and Analyze - The initial stage is to identify the business process that is to be
automated. Once the process is identified, a team of RPA architects joins to discuss the
solution for their process, it's complexity and decides how to carry on with the project.
2. Design and Develop - RPA architects create a Process Definition Document (PDD) which
explains each step in every process. Next, an Object Model Diagram or a flowchart is drawn
to determine the sequence of steps. An RPA tool (Blue Prism, UiPath, Automation
Anywhere, etc) to work with is now decided. The flow chart is then converted into a bot with
the help of the tool.
3. Testing - Once the bot is developed, it is being tested to check if it satisfies all the
requirements. Testing is either done by the development team itself or by a separate testing
team.
4. Implement - The bot is now deployed. If any issues are encountered at this stage, the project
is again sent to the development and testing phase for enhancements.
The RPA bot’s life cycle begins with a crucial step where businesses need to decide which process
requires automation. If not done carefully, then the next stages will be a total waste of time and yield
no profitable results.
Refer to the list below to understand what kind of processes can be automated using RPA. Processes
that are:
• Manual and repetitive in nature (the frequency of repetitiveness can be daily, weekly, monthly, or
yearly)
• Activated by readable input types such as input from excel sheets, word files, etc
• Voluminous in nature
Processing of huge volumes of invoices, sales order entry, ERP data entry, P2P process, and human
resources-related processes such as leave authorization, attendance management, onboarding, etc.
fall under the above categories. You can choose any process that fits your future business operations
and brings a suitable ROI to you.
To ensure that your RPA bot project does not fail miserably, it is important to do the process
analysis. Here, you will get answers to important questions like-
• How much time your business will save by automating that process?
• Is the process dependent on too many systems?
These questions help you select the right process for automation which is not vulnerable to bot
errors and deliver tangible returns. An RPA expert, Subject Matter Expert, and the operation user
will work together at this stage to check whether the process is automation friendly or not which
ultimately prevents breakdowns and bot failures.
It also helps businesses to get process clarity, stability in business continuity plans, and improve
productivity and ROI. As a result, RPA implementation can be done at a faster rate. At this stage,
complexity analysis of the process, scalability, code re-usability, technology landscape, and ROI
analysis is also done.
The advantages of automating the task should also be taken into consideration at the discovery stage
to make the analysis process fully proven. It can be any of the following things a business must want
to achieve with automation:
1. Increase in profit
6. Improve compliance
The actual process of RPA implementation begins from the third stage where a technical architect
and process architect create a process definition document (PDD) which contains detailed steps of
the process.
The purpose of PDD is to provide as much information as required to successfully implement the
RPA and recognize any gaps or possibilities in the process. It has information like- what would be
the process flow, common errors, and metrics to be judged, any dependencies, transaction load,
resource availability for support, any exceptions, etc.
The budget for the RPA project, time to be spent on it, team requirements, a necessary tool, and
other information are also mentioned in the PDD. The next step is creating an Object Model
Diagram which is nothing but a flowchart to give a bigger picture of the process to be automated.
Also, the developer will get to understand the process requirements at each step.
Fourth Stage- Development
Though RPA is better than traditional programming and requires no serious technical knowledge of
programming language, it is still best to have some level of understanding. Because this stage is very
crucial and any mistakes at this point means your bot is not going to meet the expectation.
You also need RPA tools for development. Here’s a list of some of the popular tools offered by the
reputed vendors:
• UI Path- High-scale automation is possible through this open-source RPA tool. It can automate
any web app or desktop application and make the bots smarter using NLP and AI/ML technologies.
UiPath offers cloud hosting options along with advanced screen scraping solutions. It consists of
three components- Uipath Studio, UiPath Robot, and UiPath Orchestrator.
• UI. Vision- Another open-source RPA software that you can pick is UI. Vision formerly known as
Kantu. It is a cross-platform tool that offers browser extension for visual desktop automation.
Compatibility with Selenium IDE, screen scrapping, command line interface, visual UI testing, and
the ability to work offline are a few features of UI. Vision.
• WorkFusion- An all-in-one RPA tool for enterprises is WorkFusion which comes with intelligent
automation feature. Pre-built bots, analytics, an automation studio, and an automation orchestrator
are some more features of this SaaS crowd computing platform.
RPA tools are used to create automation scripts and codes. Each code executes the step as
mentioned in the PDD. Also, the script should be such that the bot can handle variations in inputs.
Once the automation scripts for your digital workforce i.e., RPA bots are developed completely, a
user acceptance test is run to check whether it satisfies the requirement or not under a pre-production
environment. The bot may exhibit errors during testing, in that case, the fourth stage is repeated to
remove the flaws from the bot. Again, a UAT is run on the bot to check if it’s working as desired.
If the bot successfully passes the test, then it is deployed in the next stage.
Deployment is the second last stage in the RPA life cycle where the functioning of the bot is
guaranteed. Here, it runs on the production environment or host environment and is managed
through an orchestrator.
If any errors occur in RPA bot. it is sent back to the testing phase to fix the final errors. After
ensuring that the automated bot is ready to be implemented in the business architecture, it is moved
to the last and final stage i.e., execution where it provides the expected results of automation.
However, the Robotic Process Automation lifecycle does not end there, continuous support and
maintenance is needed at each stage to ensure that the bot does its task with high precision.
Otherwise, businesses cannot reap the benefits of RPA some of which include an increase in per-
employee output, a reduction in processing cost, the safety of sensitive data, scalability of business
opportunities, and more.
These benefits are the reason why the demand for RPA is proliferating, and most companies
consider this technology as its integral part.
To track implementation success, define clear, measurable goals (SMART), establish KPIs like
ROI, user adoption, efficiency gains, and performance metrics, and continuously monitor progress
against a detailed plan with regular reviews, feedback loops, risk management, and strong
communication to ensure alignment with the project's core purpose and business value.
1. Define Clear Objectives & Scope:
SMART Goals: Ensure goals are Specific, Measurable, Achievable, Relevant, and Time-bound
(e.g., "Increase sales by 10% in 3 months").
Business Value: Link objectives to tangible benefits like increased revenue, efficiency, or
customer satisfaction.
Operational: Monitor efficiency (e.g., % reduction in manual tasks), uptime, response times, and
error rates.
User-Focused: Measure adoption rates (training completion, usage), and customer satisfaction
scores.
Fidelity/Reach: Assess how well the implementation matches the plan and the percentage of the
target audience reached.
Detailed Plan: Create a roadmap with milestones, tasks, timelines, and resource allocation.
Risk Management: Proactively identify and plan for potential risks and changes.
Regular Reviews: Build in evaluation and review processes for ongoing progress checks.
Feedback Loops: Gather feedback from users and stakeholders to make adjustments.
Performance Monitoring: Track KPIs throughout the lifecycle, not just at the end.
Stakeholder Alignment: Ensure leadership and the entire organization understand and are aligned
with the vision and goals.
Core Purpose: Keep the "why" (the business purpose) central to all activities.
You cannot measure success if you do not know where you started. The biggest mistake
organizations make is failing to document the "before" state.
1. Establish a Documented Baseline Before automating a process, you must quantitatively define
how it performs manually.
Manual Average Handling Time (AHT): How long does it take a human to do one
transaction?
Manual Error Rate: What percentage of transactions currently require rework due to
human error?
Current Volume: How many transactions occur daily/weekly/monthly?
Current Cost: What is the fully loaded cost (salary, benefits, overhead) of the human
effort currently dedicated to this task?
2. Define Explicit Success Criteria per Process Don't just say "We want to automate Invoice
Processing." Define what success looks like for that specific process.
Example: "Success for Invoice Processing means reducing AHT from 12 minutes to under
2 minutes and achieving a straight-through processing rate of 90%."
3. Align with Business Objectives Ensure the metrics you choose matter to the leadership team.
Are they focused on cost cutting, improving customer experience speed, or reducing compliance
risk? Your tracking must reflect their priorities.
Phase 2: Defining the Key Performance Indicators (KPIs)
RPA metrics generally fall into three categories: Operational, Financial, and Strategic. You need a
mix of all three.
Bot Uptime/Availability: The percentage of scheduled time the bot is actually running
and available to work.
Throughput: The number of transactions processed per time unit (e.g., invoices per hour).
Compare this against the manual baseline.
Success vs. Failure Rate: The percentage of transactions completed successfully versus
those that failed due to system errors or exceptions.
Average Handling Time (Bot AHT): How fast the bot performs the task compared to the
human baseline.
Utilization Rate: Are your bots busy? If a bot only runs for one hour a day, you are
underutilizing your license infrastructure.
Hours Returned to the Business: The most common metric. (Manual AHT – Bot AHT) *
Volume = Hours Saved.
FTE Reallocation Value: Crucial distinction: Don't just track "headcount reduction."
Track the value of the work the employees are doing now that they aren't performing the
manual task.
Cost per Transaction: How much did it cost to process an item manually vs. via
automation?
ROI (Return on Investment): (Total Value Generated – Total Cost of Ownership) / Total
Cost of Ownership.
o Total Value: Savings + Revenue Gains + Cost Avoidance.
o Total Cost (TCO): Licenses + Infrastructure + Developer Costs + Maintenance
Support.
Guideline: Configure these tools immediately. Do not rely on spreadsheets to track bot
performance.
The Operational Dashboard (For RPA Controllers): Real-time view of bot status,
current queue items, immediate failures, and utilization.
The Process Owner Dashboard (For Managers): Daily/Weekly view of throughput,
exceptions handled by humans, and speed vs. baseline.
The Executive Dashboard (For C-Suite): Monthly/Quarterly view of aggregated ROI,
total hours saved across the enterprise, and strategic wins.
3. Track Exception Handling (The Hidden Metric) Tracking how many items the bot could not
process is vital.
If a bot has a 40% business exception rate (items sent back to humans for review), the
implementation may be a failure, even if the bot technically ran successfully. High
exception rates indicate poor process selection or poor developmen
1. Employee Satisfaction (CSAT/ESAT) Survey the employees who used to do the manual task.
Are they happier now that they are focusing on higher-value work? Or are they stressed because
the bot breaks constantly and they have to fix its mess?
Warning Sign: If employees are secretly running the manual process parallel to the bot
because they don't trust it, your implementation has failed.
2. Customer Satisfaction Did the automation result in faster responses to customers or fewer
errors in their orders? Track Net Promoter Score (NPS) related to the automated processes.
1. The Role of the CoE (Center of Excellence) The RPA CoE is responsible for defining
standard metrics and ensuring every deployed process reports against them. They own the "single
source of truth" for RPA data.
2. Post-Deployment Reviews Schedule mandatory reviews at 30, 90, and 180 days post-go-live.
Compare actual performance against the business case predicted in Phase 1.
Return on Investment (ROI): Compares benefits (cost savings) against RPA costs (licenses,
development).
Cost Savings: Reduced labor costs (FTE reduction), error correction costs, and compliance
fines.
Bot Utilization Rate: Percentage of time bots are actively working vs. idle.
2. Define KPIs: Choose metrics aligned with business goals (e.g., cost savings for finance, speed
for operations).
3. Track Continuously: Monitor metrics post-implementation to show ongoing value and identify
improvements.
RPA Metrics
1. Total Automated Processes
This is the sum of all the automated processes you have in production that
make up your bot portfolio. This operational metric acts as an indication of
how RPA programs evolve and grow, how adept teams are at identifying RPA
opportunities and prioritizing them through to development.
2. Velocity
3. Utilization
4. Accuracy
Accuracy refers to how often the automated process is executed with errors.
This metric indicates if your automations deliver another key RPA selling
point: improved process output quality that yields fewer errors than manual
execution.
Expected Business Value is an RPA metric that essentially consolidates all the
other KPIs. At its most basic, Expected Business Value is the sum of all the
cost savings accrued from increased velocity, utilization, and improved
accuracy multiplied by the cost of an FTE over a given period.
Enterprise Metrics
Following are the enterprise metrics to measure the success of an RPA ?
Time gains' value (TGV)? Time gains' value(TGV) compares the costs of processes
carried out by humans with RPA bots. This equation may be used to calculate it.
Where,
EC is the costs of processes performed by employees, including wages (including
leaves and vacations), taxes, and office and workplace expenses (rent, utilities,
etc).
AC stands for the expenses associated with the services provided by bots,
including license fees, development costs, virtual machine/hosting costs, and
maintenance costs.
Rise in productivity ? The "gained productivity" metric is one of the most often
utilized by enterprises to assess the performance of RPA. It demonstrates how
many FTEs were added as a result of automating a certain operation. For
instance, if automation replaced the manual labour of 4 people who would
normally spend 2 hours per day doing the activity, the productivity gain would be
1 FTE/month.
Cost per Error ? The cost of an error that occurred during a specific automation
is disclosed by this measure. It should include the cost of the labour hours
needed to fix the problem as well as the total value lost due to downtime.
Utilization of License ? License utilization gauges how much the business uses
their RPA provider license. If your UiPath?based bots are using the license to the
greatest degree possible but are unavailable for 10% of the time over a given
period due to maintenance or downtime, your license utilization will be at 90% in
this case.
Technical Metrics
Following are the technical metrics to measure the success of an RPA ?
Bot Success Rate ? Bot Success Rate/Bot Accuracy Rate shows the proportion
of cases handled by the bot for a certain operation. RPA success rates of 80% or
more are considered ideal. An RPA bot with a 99% accuracy rate is definitely
possible to build.
In general, if the RPA bots are developed following all other best practices, they
should grow pretty quickly.
Failure Rate ? The proportion of time that your bot may be completing a task
but isn't due to a problem or maintenance is known as the downtime rate.
Person Hours for Break?Fix ? Data on the amount of time needed to resolve a
specific problem is available in the Break?Solve Person Hours metric. The
quantity of FTEs or man?hours required to correct the automation and bring it
back on track should be specified.
Robot licensing
A licensing process most commonly starts with activating your Orchestrator license.
Afterward, you license your Robot by connecting it to Orchestrator or from the Command
Line, using the LicenseTool utility.
When your Robot is not connected to Orchestrator, you can activate the license with the
help of the Command Prompt.
Attended licenses
To execute attended automations, you need to allocate one or more user licenses to your
robots.
For this, you need to have a robot account in Orchestrator. Once the user license is
assigned to a specific username, that user can run one or more attended automations on
the computer under their username.
Attended
Citizen Developer
Automation Developer
Unattended licenses
To execute unattended automations, you need to allocate one or more robot licenses
(or runtimes) to your robots, specifically to the machine that hosts your robots. The
number of runtimes assigned to a machine represents the maximum number of
concurrent executions. For example, with one runtime, you can execute only one
unattended automation at a time. With five runtimes, you can execute up to five
unattended automations at the same time, on the same host machine.
For foreground automations - allocate one runtime, as this type of automations are
executed one at a time.
For background automations - Windows machines require one runtime, as they
execute one background automation at a time. Windows-Server machines can
execute several background automations simultaneously, which represents a
concurrent execution.
For concurrent executions - allocate more than one runtime. The number of
allocated runtimes determines how many automations you can execute
simultaneously on the same machine.
Production (Unattended)
Testing
LicenseTool utility
The [Link] is a command-line utility which enables you to activate
your machine online or offline, and update your license information.
The LicenseTool utility activates your license locally, which requires you to select the
Standalone license type when creating a robot in Orchestrator.
The following sections provide the most common commands for online, offline, and
generic licensing operations. The commands need to be initiated in the same folder
where the utility resides, which be default is the "C:\Program Files\UiPath\Studio" folder.
Online Operations
The following commands require an active internet connection in order to process your
request.
Activate
The activate command is used to activate a license online via an existing license code.
The following parameters are supported:
-u, --ProxyUrl The URL used for the proxy connection (such Optional
as [Link]
-s, --ProxyUser The username associated with your proxy connection. Optional.
Mandatory if the -
u parameter is used.
-w, -- The password for the user associated with your proxy Optional.
Parameter Description Priority
Update
The update command is used update an existing license online. The following parameters
are supported:
-u, --ProxyUrl The URL used for the proxy connection (such Optional
as [Link]
-s, --ProxyUser The username associated with your proxy connection. Optional.
Mandatory if the -
u parameter is used.
-w, -- The password for the user associated with your proxy Optional.
ProxyPassword Mandatory if the -
connection.
u parameter is used.
C:\Program Files\UiPath\Studio\[Link] update
License registration state: ActiveLicense
License successfully updated!
Deactivate
The deactivate command is used to deactivate a local license. This way, the license
becomes available for activation on a different computer. The following parameters are
supported:
-u, --ProxyUrl The URL used for the proxy connection (such Optional
as [Link]
-s, --ProxyUser The username associated with your proxy connection. Optional.
Parameter Description Priority
Mandatory if the -
u parameter is used.
-w, -- The password for the user associated with your proxy Optional.
ProxyPassword Mandatory if the -
connection.
u parameter is used.
C:\Program Files\UiPath\Studio\[Link] deactivate
License registration state: NoLicenseAvailable
License successfully deactivated!
Offline Operations
Activation-Request
The activation-request command is used to generate an activation token from your
license code. The generated token needs to be used on the Activation Portal to generate
the corresponding license file. The following parameters are supported:
-o, --FileName Writes the license information to file. If this parameter is not Optional
specified, the license information is displayed in the command
prompt window.
C:\Program Files\UiPath\Studio\[Link] activation-request -l
1234-2303-2194-5598
Activation Token:
eyJsaWNlbnNlQ29kZSI6Ijk1NTUtMjMwMy0yMTk0LTU1OTgiL12345WFpbCI6InNvbWUuZW1haWxAZ
XhhbXBsZS5vcmciLCJtZXRhZGF0YSI6eyJyYW0iOiIzNDE0NjA0MTg1NiIsImRpc3BsYXlOYW1lIjo
iSW50ZWwoUikgVUhEIEdyYXBoaWNzIDYzMCIsInZlcnNpb24iOiIxOS43LjAiLCJzeXN0ZW1MYW5nI
joiMDQwOSIsInN5c3RlbU1vZGVsIjoiT3B0aVBsZXggNTA2MCIsIm9zTmFtZSI6IlBDLURPRE9JVUI
iLCJ1c2VyTmFtZSI6ImJvZ2Rhbi5kb2RvaXUiLCJzeXN0ZW1OYW1lIjoiUEMtRE9ET0lVQiIsImRpc
3BsYXlSZXMiOiIxMDI0IGJ5IDc2OCBwaXhlbHMsIFRydWUgQ29sb3IsIDYwIEhlcnR6IiwicHJvY2V
zc29yIjoiSW50ZWwoUikgQ29yZShUTSkgaTctODcwMCBDUFUgQCAzLjIwR0h6Iiwic3lzdGVtVHlwZ
SI6Ing2NC1iYXNlZCBQQyJ9LCJsaWNlbnNpbmdNb2RlbERhdGEiOnsidXNlcklkIjoiYm9nZGFuLmR
vZG9pdSIsIm1hY2hpbmVJZCI6IlBDLURPRE9JVUIifX0=
Go to [Link] and paste the activation token in the
dialogue box to generate the license file for offline activation.
Activate-Offline
The activate-offline command is used to activate a license offline. It uses the license
file generated by the Activation Portal from the provided activation token generated by
the activation-request command. The following parameters are supported:
-f, --LicenseFile The path to the license file obtained from the activation Mandatory 1
portal.
Parameter Description Priority
-i, -- The content of the license file received after using Mandatory1
LicenseContent the Activation-Request operation.
1
- You can only use either the -f or -i parameters with the activate-
offline operation. They are not both supported at the same time.
C:\Program Files\UiPath\Studio\[Link] activate-offline -
f c:\Downloads\[Link]
License registration state: ActiveLicense
License successfully activated!
Update-Request
The update-request command is used to generate an update token for your license. The
update token needs to be used on the Activation Portal to generate the corresponding
license file. The following parameters are supported:
-o, -- Writes the license information to file. If this parameter is not specified, Optional
FileName
the license information is displayed in the command prompt window.
C:\Program Files\UiPath\Studio\[Link] update-request
Update Token:
eyJsaWNlbnNlQ29kZSI6Ijk1NTUtMj102345yMTk0LTU1OTgiLCJlbWFpbCI6bnVsbCwibWV0YWRhd
GEiOnsicHJvY2Vzc29yIjoiSW50ZWwoUikgQ29yZShUTSkgaTctODcwMCBDUFUgQCAzLjIwR0h6Iiw
ic3lzdGVtTW9kZWwiOiJPcHRpUGxleCA1MDYwIiwidXNlck5hbWUiOiJib2dkYW4uZG9kb2l1IiwiZ
GlzcGxheVJlcyI6IjEwMjQgYnkgNzY4IHBpeGVscywgVHJ1ZSBDb2xvciwgNjAgSGVydHoiLCJ2ZXJ
zaW9uIjoiMTkuNy4wIiwicmFtIjoiMzQxNDYwNDE4NTYiLCJzeXN0ZW1MYW5nIjoiMDQwOSIsIm9zT
mFtZSI6IlBDLURPRE9JVUIiLCJkaXNwbGF5TmFtZSI6IkludGVsKFIpIFVIRCBHcmFwaGljcyA2MzA
iLCJzeXN0ZW1UeXBlIjoieDY0LWJhc2VkIFBDIiwic3lzdGVtTmFtZSI6IlBDLURPRE9JVUIifSwib
GljZW5zaW5nTW9kZWxEYXRhIjp7InVzZXJJZCI6ImJvZ2Rhbi5kb2RvaXUiLCJtYWNoaW5lSWQiOiJ
QQy1ET0RPSVVCIn19
Go to [Link] and paste the update token in the dialogue
box to generate the license file for offline update.
Update-Offline
The update-offline command is used to update a license offline. It uses the generated
file by the Activation Portal from the provided update token generated by the update-
request command. The following parameters are supported:
-f, --LicenseFile The path to the license file obtained from the activation Mandatory 1
portal.
-i, -- The content of the license file received after using Mandatory 1
LicenseContent the Update-Request operation.
1
- You can only use either the -f or -i parameters with the update-
offline operation. They are not both supported at the same time.
C:\Program Files\UiPath\Studio\[Link] update-offline -f
c:\Downloads\[Link]
License registration state: ActiveLicense
License successfully updated!
Deactivation-Request
The deactivation-request command is used to deactivate a local license offline and
generate a deactivation token. The license is immediately deactivated on the local
computer and another one can be activated if needed. The generated deactivation token
needs to be used on the Activation Portal to deactivate the license. Please note that the
license which was deactivated offline with this command can not be reused until it is
released. The following parameters are supported:
-o, -- Writes the license information to file. If this parameter is not specified, Optional
FileName
the license information is displayed in the command prompt window.
C:\Program Files\UiPath\Studio\[Link] deactivation-request
Deactivation Token:
eyJsaWNlbnNlQ29kZSI6Ijk123458My0yMTk0LTU1OTgiLCJsaWNlbnNpbmdNb2RlbERhdGEiOnsid
XNlcklkIjoiYm9nZGFuLmRvZG9pdSIsIm1hY2hpbmVJZCI6IlBDLURPRE9JVUIifSwibWV0YWRhdGE
iOnsib3NOYW1lIjoiUEMtRE9ET0lVQiIsInVzZXJOYW1lIjoiYm9nZGFuLmRvZG9pdSIsInZlcnNpb
24iOiIxOS43LjAiLCJkaXNwbGF5UmVzIjoiMTAyNCBieSA3NjggcGl4ZWxzLCBUcnVlIENvbG9yLCA
2MCBIZXJ0eiIsInN5c3RlbU5hbWUiOiJQQy1ET0RPSVVCIiwicHJvY2Vzc29yIjoiSW50ZWwoUikgQ
29yZShUTSkgaTctODcwMCBDUFUgQCAzLjIwR0h6Iiwic3lzdGVtVHlwZSI6Ing2NC1iYXNlZCBQQyI
sInJhbSI6IjM0MTQ2MDQxODU2IiwiZGlzcGxheU5hbWUiOiJJbnRlbChSKSBVSEQgR3JhcGhpY3MgN
jMwIiwic3lzdGVtTGFuZyI6IjA0MDkiLCJzeXN0ZW1Nb2RlbCI6Ik9wdGlQbGV4IDUwNjAifX0=
License successfully deactivated locally!
To release the license on the sever side and use it on another machine, go to
[Link] and paste the deactivation request certificate as
text in the <code>Deactivate your licence</code> tab.
Generic Operations
The [Link] utility also contains a few generic commands. They provide
information about your license, and can help you get accustomed to the supported
commands and parameters.
Command Description
help Displays information about all the supported commands and parameters.
Debugging
Debugging is the process of identifying and removing errors that prevent the project from
functioning correctly. It is recommended to perform debugging during the design stage of
the automation project, at activity, file and project level.
Debugging can be performed using several options, defined in the ribbon and explained
in the Debugging Actions page.
By default, debugging is performed on the local robot. You can run or debug your
projects using a robot on a remote machine by enabling remote debugging.
Several panels make it easier to view the debugging process, add values or monitor
variables and arguments.
Start Debugging
The options for running and debugging a file or project are available both in
the Design and Debug tabs.
Option Description
Debug File Click Debug File or use F6 to debug the current file.
Run File Click Run File or use Ctrl + F6 to run the current file.
The default action under Run/Debug ribbon button can be configured from Backstage
View > Settings > Design tab. Pick from Debug File, Run File, Debug Project,
or Run Project, as the default action when clicking the button.
During debug, click the Break button to pause. The activity which is being debugged
remains highlighted when paused. Once this happens, you can choose other debug
actions like Step Into or press Stop to exit and return to design mode. The keyboard
shortcut for the Stop button is F12.
It is recommended to use Break along with Slow Step so that you know exactly when
debugging needs to be paused.
Automation Library:
Robot Framework: While originally for test automation, it has extensive libraries for RPA, using a
keyword-driven approach that is human-friendly and versatile.
RPA for Python (formerly TagUI for Python): Offers a simple and powerful API for automating
tasks across websites, desktop applications, and the command line.
Selenium: A popular library primarily used for automating web browsers. It allows scripts to
interact with web pages, fill out forms, and extract data, making it a staple for web-based RPA.
Openpyxl and Pandas: Libraries used for working with Excel files and data manipulation,
analysis, and cleaning in data-centric RPA projects.
PyPDF2 (or similar PDF libraries): Used to read and write PDF documents, a common task in
many business processes.
Blue Prism: Offers a comprehensive automation suite with a visual "Object Studio" for building
workflows using a drag-and-drop interface.
Activation Packages:
Dependencies
The UI Automation activity package contains the following internally-developed
dependencies:
The table below enlists the dependencies shipped with each version of the package:
Remember to properly migrate your processes when updating the 2018.3 UiPath
Platform. The dependencies and activities installation algorithm has improved, which can
cause conflicts when executing processes with packages installed from local feeds. If you
encounter any issues while updating, check out possible solutions on this page. Also,
remember to check out how to Open Projects Created with Previous Versions.
NOTE: Once the migration is performed, you cannot revert the project to use the
old Core package.
Starting with Studio v2018.3 or higher, you cannot install the Core package from
the Package Manager. However, rest assured that
the [Link] and [Link] packages contain
all the activities that were in the old one. Additionally, from v2018.3 on, you can use any
combination of activity packages regardless of what version of Studio you are using at
that moment.
NOTE: Once a project is published with v2018.3 or higher, it can no longer be executed
by using a v2018.2 or lower Robot.
Please note that the location of the tessdata folder which is used to install languages for
the Google OCR engine has been moved from %ProgramFiles(x86)%\UiPath\Studio
essdata to %UserProfile%\.nuget\packages\[Link]. You can read more about
installing and changing the language for the Google OCR engine on this page.
For more information on how this change impacts Studio, you can read more here.
If the Robot machine has access to the Internet, then the Official feed from
the [Link] file must be removed to prevent the Robot from downloading it again.
Read more about Managing Packages.
Activation Packages:
RPA (Robotic Process Automation) "Activity Packages" are pre-built collections of automation
components (like activities, workflows) in tools like UiPath that enable robots to perform tasks like
data entry, web scraping, UI interaction, and system API connections, bundling functions for
finance, HR, customer service, etc., to automate repetitive, rule-based business processes.
Common Activity Package Categories & Examples
UI Automation: (Core package) Simulates human actions like mouse clicks, keyboard input, text
extraction, browser interaction, and OCR for image/text recognition.
System Activities: File management, email automation, scheduling, application launching, and
managing processes.
Data Manipulation: Excel, CSV, JSON, XML processing, data mapping, and data transformation
activities.
Web Automation: Specific activities for web scraping, browser automation (Chrome, Edge,
Firefox), and interacting with web elements.
Application-Specific: Packages for SAP, Salesforce, Oracle, or other enterprise systems,
allowing direct interaction with their interfaces or APIs.
Customer Service: Ticket routing, customer query responses (chatbots), data updates in CRM.
Supply Chain: Inventory management, order processing, logistics tracking, catalog updates.
Form Filling: Automatically completing online forms with data from other sources.
Data Extraction: Pulling specific data from documents (invoices, emails, PDFs) or websites (web
scraping).
Email Management: Opening emails, extracting information from attachments, and sorting
messages.
Report Generation: Compiling data from multiple sources and formatting it into standard reports.
File & Folder Management: Moving, copying, renaming, and organizing digital files.
Application Launch & Login: Automatically opening applications and logging in with
credentials.
Image and Text automation is useful in situations when UI automation does not work,
such as in virtual machine environments, where selectors cannot be found by using
normal methods.
Text and image automation in RPA uses technologies like OCR (Optical Character Recognition)
and image recognition to "see" and "read" digital content, enabling bots to process unstructured
data from screenshots, documents, or virtual environments (like Citrix) where traditional selectors
fail, allowing for data extraction, clicks on visual elements, and data entry for complex, end-to-end
process automation, bridging gaps left by pure UI automation.
Key Technologies & How They Work
Optical Character Recognition (OCR): Converts images of text (typed, handwritten) into
machine-readable data.
o Use: Extracts data from invoices, scanned forms, or virtual desktops where text isn't directly
selectable.
Image Recognition: Identifies and interacts with specific images or visual elements on screen,
regardless of underlying code.
o Use: Clicks buttons, icons, or areas on virtual machines (Citrix) or applications with unstable UIs.
Natural Language Processing (NLP): Understands and processes human language, enabling
bots to interpret text for context, sentiment, and entity extraction (names, addresses).
o Use: Automating customer service, transcribing calls, or generating reports from extracted data.
Document Processing: Extracting invoice details, claim information, or patient records from
scanned documents using OCR and AI.
Data Entry: Reading data from images (like checks) and entering it into systems.
Customer Support: Using NLP to understand emails/chats and RPA to take action, or
transcribing voice calls for processing.
AI Integration: Modern RPA tools use AI/ML to enhance OCR accuracy for handwritten text and
understand image context, moving towards true intelligent automation.
Benefits
Automates complex, unstructured data processes.
Keyboard Shortcuts
The complete list of keyboard shortcuts for UiPath Studio:
File Management
Ctrl + Shift + N - Creates a new Blank Process.
Ctrl + C - Copies a file from the Project panel into clipboard. Use Ctrl + V to paste it
anywhere in the tree.
Ctrl + Shift + S - Saves all the workflows that are currently open.
Ctrl + Tab - Moves focus between workflows opened in the Designer panel.
Ctrl + W - Closes the workflow file that is in focus in the Designer panel.
Alt + F7 - Moves focus between Studio panels. When you use Ctrl + Tab or Alt + F7 and
hold the modifier key (Ctrl or Alt respectively), the following window appears, allowing
you to switch between active files and panels in Studio.
Search
F3 or Ctrl + Shift + P - Opens the Command Palette.
Ctrl + 1 - Switches to the Current File tab in the Universal Search bar.
Ctrl + 2 - Switches to the All Files tab in the Universal Search bar.
Ctrl + 7 - Switches to the Project Files tab in the Universal Search bar.
Ctrl + Alt + F - Sets the focus to the search box in the Activities panel.
Ctrl + Alt + O - Sets the focus to the search box in the UI Objects Browser panel.
Ctrl + Alt + P - Opens and focuses the search bar in the Project panel.
Ctrl + Alt + S - Opens and focuses the search bar in Snippets panel.
Tab - Navigates to the next item in the panel or the next element in the activity.
A list of useful keyboard shortcuts is displayed in the Designer panel, when all project
files are closed, as illustrated in the image below:
Comment
Ctrl + D - Ignores the activity that is currently selected by placing it into a Comment
Out container.
Ctrl + E - Removes the activity from the Comment Out container it was placed in.
Debugging
F9 - Marks the selected activity with a breakpoint.
F10 - When debugging, steps over the execution of a block of activities in the currently
selected workflow.
F11 - When debugging, enables you to step into a block of activities and executes the
first one.
Shift + F11 - When debugging, steps out of the current container after its last activity is
executed.
Recording
Ctrl + Alt + B - Opens the Basic Recording toolbar.
F4 - Lets you choose the UI Framework to record, which can be Default, AA, and UIA.
Shift + F7 - Checks the whole project for validation errors and Workflow
Analyzer violations.
Pause - Pauses the execution of the current workflow, in both normal and debug mode.
F12 - Stops the execution of the current workflow, in both normal and debug mode.
Selected Activity
Ctrl + T - Places the activity inside the Try section of a Try Catch activity.
Ctrl + V - Pastes the copied activity or activities inside the selected item.
Ctrl + K - Creates a variable of the same type as the required type of the activity when
used in an input field or the Expression Editor. If an expression already exists in the
field, before pressing CTRL + K, you can select that expression or a part of it to use the
selected text as the name of the new variable.
Ctrl + M - Creates an In argument of the same type as the required type of the activity
when used in an input field or the Expression Editor. If an expression already exists in
the field, before pressing CTRL + M, you can select that expression or a part of it to use
the selected text as the name of the new argument.
Ctrl + Shift + M - Creates an Out argument of the same type as the required type of
the activity when used in an input field or the Expression Editor. If an expression
already exists in the field, before pressing CTRL + Shift + M, you can select that
expression or a part of it to use the selected text as the name of the new argument.
Ctrl + Shift + E - Opens the Expression Editor when used inside activity input fields.
Tab - Moves through the fields and buttons in the activity, including the menu
displayed when you hover the mouse over an input field.
Test Automation
Ctrl + Alt + T - Open Test Explorer panel. You can use this anywhere within
the Designer panel.
Alt + Down Arrow - Open the Run All in View menu from the Test Explorer.
Alt + T - Open Test Results sub-panel in Test Explorer. You can use this only in
the Test Explorer panel.
Alt + A - Open Activity sub-panel in Test Explorer. You can use this only in the Test
Explorer panel.
Arguments Dialogs
The following keyboard shortcuts are available in Arguments dialog boxes available in
activities such as Invoke Workflow File and Inject .NET Code:
F2 - Highlights the current cell for editing, positioning the cursor at the end of the line.
Ctrl + Tab - Moves through the options available in the window for the selected item in
the grid (Delete, Move up, Move Down).
Status Bar
Alt + D - Access the Source Control, Orchestrator folders, and Orchestrator/Cloud
Connection menus in the status bar, and then use Shift + Tab to cycle through the
menus. Once a menu is selected, press Enter to open it.
Backstage View
CTRL + Tab - Moves focus between tabs. This also applies to the sub-tabs inside
the Tools and Settings tabs.
Miscellaneous
F1 - Enables you to access a help topic associated with the currently selected element.
Alt + - - Opens the Options context menu in the title bar of the currently selected panel.
Please note that this works with the hyphen key above the character keys, not with the
minus key in the numpad.
Shift + Tab - Navigates to the previous activity or node in the Activities panel.
Shift + F10 - Open the context menu for the selected item (right-click).
Ctrl + Tab - Moves the focus out of multiline text boxes where pressing the Tab key
inserts a tab.
Ctrl + Shift + F10 - Dismisses the tooltip content for the selected item.
B Break execution –
T Stop execution –
S Step Into –
V Step Over –
O Step Out –
ER Retry –
EI Ignore –
ES Restart –
F Focus –
Key(s) Action Performed Additional Keys and Actions
O Open a project –
Image and Text automation is useful in situations when UI automation does not work,
such as in virtual machine environments, where selectors cannot be found by using
normal methods.
Screen Scraping: This technique is a form of output automation that captures and extracts data
from an application's display, which can include both text and image data, for use elsewhere in a
workflow.
Common tools for this type of automation include UiPath, Power Automate, and Automation
Anywhere.
Automation for Content Generation
This involves automatically creating new visual and textual content, which is widely used in
marketing, social media, and design.
Key applications include:
Image Generation from Data/Templates: Marketers can automatically generate thousands of
personalized images (e.g., ad banners, social media posts, personalized email graphics) by
pulling data like names, product images, and prices from spreadsheets or databases and
inserting them into pre-designed templates.
AI Text-to-Image: Using AI models (like those from Canva or Runway), users can input text
descriptions (prompts) to generate unique, original images or artwork.
Automated Social Media Content: Workflows can be set up using integration platforms
like Zapier or [Link] to automatically create text, images, and videos from source content
(like a voice note) and publish them across various social media platforms.
Image Annotation and Captioning: AI can automatically analyze image content and generate
descriptive text (alt text) or full captions, which aids in accessibility and image search
optimization.
This process uses AI models to create new text and images from a given input,
often a simple text
prompt.
2. Feature Mapping: The system maps the textual elements to specific visual or stylistic
features (colors, shapes, objects, writing style).
4. Refinement & Output: The content is refined to ensure quality and coherence before
being output as a new image, article, or social media post
Use this activity to set an environment variable, providing the name and the value for it.
If the variable does not already exist, it will be created automatically.
NOTE: You can only set a User Environment Variables using this activity.
Properties
Common
DisplayName - The display name of the activity. This field supports
only Strings or String variables.
Input
Name - The name of the new environment variable. This field supports
only Strings or String variables.
Value - The value of the new environment variable. This field supports
only Strings or String variables.
Misc
Private - If selected, the values of variables and arguments are no longer logged
at Verbose level.
Setting up the UiPath environment involves signing up for an Automation Cloud account,
installing UiPath Studio (often via the cloud portal), and then configuring it to connect to your
cloud Orchestrator, which includes setting up Folders, Robots, and assigning users with roles for
managing automations in a structured way (like for attended or unattended processes). You'll use
the cloud portal to get credentials and manage resources, while the local installation handles
development and execution, connecting to the cloud for deployment and monitoring.
1. Cloud Account & Orchestrator Setup (Automation Cloud)
Sign Up: Go to [Link] and click "Try UiPath Free" to create an account and organization.
Access Orchestrator: Log in to the Automation Cloud ([Link]) and select your tenant.
Create Folders: Create specific folders (e.g., Unattended ) for organizing your automations and
robots.
Manage Users & Roles: Add users and assign them roles (like Administrator, Developer, or
Robot role) to control access and permissions.
Install: Run the installer, choosing "Custom" for advanced options if needed, and select
the appropriate installation type (User Mode for attended, Service Mode for unattended).
Key Components
Automation Cloud: The central web platform for managing licenses, Orchestrator, and users.
Orchestrator: Manages and deploys automations, queues, and robot fleets.
Installation Modes:
o User Mode (Recommended for Developers): Installs per user in %localappdata%\
Programs\UiPath and does not require administrator privileges.
Extensions: During setup, ensure you install necessary extensions for the applications
you plan to automate (e.g., Chrome/Edge, Excel Add-in, or Java).
2. Orchestrator Configuration
Orchestrator acts as the "brain," managing your robots and processes.
Folders & Environments: In modern Orchestrator setups, you create folders to
organize robots and users. In classic setups, you group Robots into Environments to
deploy specific processes to them.
Connection: Connect your local UiPath Assistant to the cloud by signing in with your
UiPath account or using a Machine Key.
Robot Setup: Assign your robot to a folder or environment so it can receive and execute
tasks published from Studio.
JavaScript SDK.
o PACKAGES_FOLDER : Can be set as an environment variable to change where the Robot
downloads automation packages (default is %userprofile%\.nuget\packages ).
Accessing Variables in Workflows: Within UiPath Studio, you can access environment
data (like [Link] or [Link] ) directly in your code
to make automations dynamic across different machines.
Introduction to UiPath
UiPath is a robotic process automation tool for large-scale end-to-end automation. For an
accelerated business change, it provides solutions for businesses to automate routine office
activities. It uses a variety of methods to transform tedious tasks into automated processes.
Robotic process automation (RPA) has significantly benefitted the companies trying to
ride the wave of artificial intelligence (AI) powered applications. UiPath is one of the
widely used RPA tools. UiPath allows IT departments to set up software robots that
collect and interpret data in various applications to automate routine tasks. If you’re
wondering what UiPath is, then you’re in the right place.
What Is UiPath?
UiPath is a robotic process automation tool for large-scale end-to-end automation. For an
accelerated business change, it provides solutions for businesses to automate routine
office activities. It uses a variety of methods to transform tedious tasks into automated
processes.
Features of UiPath
Now that you have understood what UiPath is, this tutorial will now look at the key
features of UiPath.
The user can use this function to record actions and transform them into an automated
process series. UiPath has the following types of recording options:
Basic recording- It focuses on automating single tasks and is commonly used to develop each
activity's complete selector.
Desktop recording- It can be used for a variety of actions as well as application development.
Web recording- Web recording is a common tool for viewing and recording web page
activities.
Citrix recording- It is very widely used for recording stuff like pictures and virtualized
environment automation.
UiPath comes with over 300 built-in activities covering a wide range of process
automation and application integration design tasks. You can find these activities in the
Activities pane, which covers most design tasks such as data extraction, data entry, and
automation.
Scraping data from web pages and applications is easier with UiPath Screen Scraping.
Furthermore, the data scraping wizard helps in the scraping of data with a repetitive
structure. Scraping solution works flawlessly with any program, including .Net, Java,
Flash, PDF, Legacy, and SAP.
High Security and Robustness
You can create super-smart, durable robots with UiPath. With a simple visual canvas,
everyone in the company can use these bots. UiPath offers high-security auto-login
functionality to run the bots and operates with a locked screen, allowing automated
processes to run in complete privacy.
UiPath Architecture
Now that you have understood what UiPath is, and what its components are, it’s time to
understand the UiPath architecture.
It consists of 2 sections.
Client-side UiPath components are those that the user or developer can communicate with
directly. UiPath Studio, Robot, Browser, and UiPath Agent are usually included.
UiPath's backend operations are considered server-side. It saves the tasks and workflows that
a user produces in the databases.
The UiPath Orchestrator chooses the necessary functions and software robots to carry out the
code's tasks.
The robots' logs and statistics are stored in the backend. The records are useful for analyzing
robot performance and detecting errors.
This service in UiPath serves as a mediator between the client-side and the server-side
of UiPath. All of the information and data are conveyed via the handler. It also logs
messages in the Orchestrator before being moved to the SQL server. The service can be
used to search all the currently available tasks in the device tray. It also can change
device settings and start/stop current tasks.
Software robots use this service to carry out the tasks specified in a Windows session.
1. Presentation Layer
The UiPath components that are open to users make up the client layer. It includes UiPath
Studio, Robots, Browsers, UiPath Agent, and Executors.
A user or a developer may use these components to design and create different tasks that can
be automated. Computer robots are commonly used to complete these tasks. The client layer
is another name for this layer.
2. Server Layer
The server layer is the UiPath architecture's significant sheet. The cloud layer shows all server
information. The Orchestrator is the most crucial part of the server layer. When the robots
perform the tasks, it periodically uploads the entire project to the server.
The Orchestrator is in charge of the whole band. It keeps track of project development,
schedules software robots for execution, and produces summary reports based on filtered
parameters.
The server layer helps synchronize software and software robots so that they can continue to
perform routine tasks. It helps the project meet its project requirements, service levels, and
deadlines, thanks to its web-based management system.
3. Persistence layer
Database servers make up the bulk of this sheet. In this layer, all the robots' configuration
information is saved. Users insert data, robots, assigned tasks, logging info, and asset details,
among other items, into the Orchestrator's configuration details.
Furthermore, the persistence layer is in charge of keeping the log information updated by the
UiPath agent services. Elastic search is used to store these logs. The logs are primarily useful
for locating and correcting errors.
Process-level data is usually saved in relational database management systems such as SQL
Server. This makes processing logs from the vast volume of data a lot simpler. Hence, the
queues’ tasks are often taken care of by the persistence layer.
Benefits of UiPath
Increased Productivity
UiPath automates with quick speed and accessibility. Consider an RPA bot that allows a
worker to produce a monthly report in 20 minutes. When done manually, it would take
four hours. The company's productivity would increase as a result of process automation.
High Efficiency
RPA software does not need a break; it can operate 24 hours a day, seven days a week,
365 days a year. It also does not take a break or become ill. In most cases, a single RPA
robot may replace two to five full-time workers, if not more. Robots can do the same
amount of work in less time, or more work than humans at the same time.
Customer Experience
In an RPA-adopted business, routine, repetitive, and boring tasks are assigned to robots,
allowing employees to focus more on customer service. Companies may meet consumer
needs with the help of professional and knowledgeable employees.
Highly Secure
There is no risk of information leakage from one component to another because it only
performs single tasks. As a result, data access is strictly monitored and reported.
Cost-Effective
UiPath has minimal operating costs and more efficient use of IT resources.
UiPath Components
1. UiPath studio- UiPath studio is a user-friendly interface that allows users to visually plan and
design various automation processes through diagrams, using the drag-and-drop functionality.
These diagrams are merely a structural reflection of specific tasks that must be completed.
2. UiPath robot- After you've built your process, the next move is to put it into action in the UiPath
studio. UiPath Robots are used to translate the strategies into tasks, which are then executed.
These robots are used to assign various tasks and carry them out in the same manner as
humans but without human interference. When a given operation occurs on the computer,
they program UiPath robots to begin executing tasks automatically.
3. UiPath Orchestrator-The Orchestrator is a web-based application in UiPath. It has features for
deploying, monitoring, scheduling, and controlling automated bots and processes. It's a
centralized forum for managing and maintaining all software bots.
User Interface:
The user interface (UI) in Robotic Process Automation (RPA) is crucial, allowing software bots to
mimic human actions like clicks and key presses on applications' graphical user interfaces (GUIs)
to automate tasks, learn processes through recording, and extract data, essentially acting as a
"digital worker" interacting directly with screens and systems without needing APIs, making
automation accessible for many repetitive jobs. Key UI aspects include mouse/keyboard
emulation, screen scraping (reading screen data), and tools like the UiPath Assistant,
enabling attended (human-assisted) or unattended (fully automatic) operations across desktop
and web apps.
Key UI Interaction Methods
Mouse & Keyboard Emulation: Bots simulate human input, moving cursors, clicking buttons,
and typing data into fields just like a person.
Screen Scraping: Robots read and extract information directly from what's displayed on the
screen, even from legacy systems without APIs.
Recording/Mimicry: Users perform a task once, and the RPA tool records these steps, allowing
the bot to replay the exact sequence.
How It Works
Learning from Humans: RPA learns by watching users navigate applications, building a list of
actions to automate.
Direct GUI Interaction: Bots interact with applications at the visual level, understanding
elements on the screen (like buttons or text fields) to perform tasks.
Types of Automation:
o Attended: Bots work alongside humans on desktops (e.g., Robotic Desktop Automation).
Focus on Usability: Effective RPA design ensures that the process owner's knowledge is easily
translated into automation, making the tool intuitive and engaging for both builders and end-
users.
Future Trends
While UI automation is powerful, advancements in AI (like NLP) and increased availability of APIs
are shifting some automation towards more intelligent, API-driven, or conversational interfaces,
reducing reliance on purely visual UI interaction over time.
4 Command Search within your project using the available search bars:
Palette Add activity
Universal search
Go to File
Jump to activity
8 Project Panel View the contents of your current project, manage files,
folders, and dependencies, and adjust project settings.
1 Outline Panel View the hierarchy of the current workflow and all available
3 nodes.
4 Repository
Panel
1 Output Panel View the output of the Log message and Write
6 Line activities, status information regarding the execution
of your project, errors generated by activities packages,
and more.
1 Error List View all the errors generated when running the Workflow
8 Panel Analyzer.
It can import data from various sources and apply different operations to it.
Common use-cases are reading and writing CSV files, inspecting files in
directories, or running tasks using existing Excel data.
Import types
The data a table can be created from can be of two main types:
data1 = [
{"name": "Mark", "age": 58},
{"name": "John", "age": 22},
{"name": "Adam", "age": 67},
]
[Link]
It can import data from various sources and apply different operations to it.
Common use-cases are reading and writing CSV files, inspecting files in
directories, or running tasks using existing Excel data.
Import types
The data a table can be created from can be of two main types:
data2 = {
"name": ["Mark", "John", "Adam"],
"age": [ 58, 22, 67],
}
Would both result in the following table:
Inde
Name Age
x
0 Mark 58
1 John 22
2 Adam 67
Columns can be referred to in two ways: either with a unique string name or their
position as an integer. Columns can be named either when the table is created, or
they can be (re)named dynamically with keywords. The integer position can
always be used, and it starts from zero.
For instance, a table with columns “Name”, “Age”, and “Address” would allow
referring to the “Age” column with either the name “Age” or the number 1.
Rows do not have a name, but instead only have an integer index. This index also
starts from zero. Keywords where rows are indexed also support negative values,
which start counting backwards from the end.
For instance, in a table with five rows, the first row could be referred to with the
number 0. The last row could be accessed with either 4 or -1.
Examples
Robot Framework
The Tables library can load tabular data from various other libraries and
manipulate it inside Robot Framework.
*** Settings ***
Library [Link]
The library is also available directly through Python, where it is easier to handle
multiple different tables or do more bespoke manipulation operations.
from [Link] import Tables
library = Tables()
orders = library.read_table_from_csv(
"[Link]", columns=["name", "mail", "product"]
)
Robomotion takes a simpler approach. The data table is just a simple JSON
object.
[Link] = {
"columns": ["name", "age", "location"],
"rows": [
{"name":"John", "age":54, "location": "Boston"},
{"name":"Jane", "age":47, "location": "London"}
]
}
If you do not select Headers the columns will be named like below;
[Link] = {
"columns": ["A", "B", "C"],
"rows": [
{"A":"John", "B":54, "C": "Boston"},
{"A":"Jane", "B":47, "C": "London"},
]
}
If you select Headers and not Jsonify the column names will be the same as the
Excel file. So if it has spaces and uppercase characters, these will not change. But
if you select the Jsonify option then the column name first will be converted to
lowercase and the space between the words will be replaced with an underscore.
So if you have a table like the above and you need to add a new row, you first
need to create a row object as below.
Now you need to add this row to the table's row array as below;
[Link](my_row)
{
"columns": ["name", "age", "location"],
"rows": [
{"name":"John", "age":54, "location": "Boston"},
{"name":"Jane", "age":47, "location": "London"},
{"name":"Tom", "age":28, "location":"Chicago"}
]
}
Excel is a versatile tool for data analysis, offering a wide range of features and
functions that allow users to manipulate, analyse, and visualise data effectively. It
provides a user-friendly interface and a wide range of built-in tools that make it suitable
for performing basic to advanced data manipulation tasks. With its wide range of
features and functions, users can manipulate, analyse, and visualise data effectively to
gain insights and make informed decisions.
Learn about the uses and applications of Excel in different fields with the IIT Mandi
Certificate Programme in Applied Artificial Intelligence and Machine Learning .
Data manipulation refers to altering or transforming data to make it more useful for
analysis, presentation, or storage. It is a fundamental aspect of data analysis and is
crucial in preparing data for use in various applications such as business intelligence,
scientific research, machine learning, etc. It offers several advantages. It facilitates
data preparation by cleaning, filtering, and transforming raw data into an analysable
format, ensuring accuracy and relevance.
Data Cleaning: Excel offers features like Find and Replace, Text to Columns, and
Remove Duplicates to clean data by removing unwanted characters, correcting errors,
and eliminating duplicate records.
Sorting and Filtering: Excel allows you to sort data alphabetically or numerically and
filter data based on specific criteria, enabling you to focus on relevant information and
organise data effectively.
Formulas and Functions: Excel's vast library of functions, such as SUM, AVERAGE,
VLOOKUP, and IF, enables you to perform calculations, look up values, and apply
conditional logic to manipulate data dynamically.
PivotTables and PivotCharts: PivotTables allow you to summarise and analyse large
datasets by rearranging and summarising data dynamically. PivotCharts provides visual
representations of PivotTable data for easier interpretation and analysis.
Data Validation: Excel's Data Validation feature allows you to define rules and
restrictions for data entry, ensuring data accuracy and consistency.
Data Consolidation: Excel's Consolidate feature allows you to combine data from
multiple worksheets or workbooks into a single summary sheet, facilitating analysis and
reporting.
Text Functions: Excel provides various text functions, such as CONCATENATE, LEFT,
RIGHT, and MID, for manipulating text strings, extracting substrings, and combining
text from multiple cells.
Date and Time Functions: Excel's date and time functions, including TODAY, DATE,
TIME, and WEEKDAY, enable you to perform calculations and manipulations on dates
and times, such as calculating differences between dates or extracting components of
date/time values.
Data Analysis Toolpak: Excel's Data Analysis Toolpak add-in offers advanced
statistical and data analysis tools, such as regression analysis, histogram generation,
and descriptive statistics, for complex data manipulation and analysis.
Performance Issues: Excel may become slow or unresponsive when working with large
datasets or performing complex calculations. This can lead to delays in data manipulation
tasks and hinder productivity.
Limited Data Capacity: Excel has size limitations on how much data it can handle, such
as the number of rows (1,048,576 rows in Excel 2016 onwards) and columns (16,384).
Large datasets may exceed these limits, making it difficult to analyse or manipulate all
the data within Excel.
Data Quality Issues: Excel needs built-in data quality features, making it challenging to
identify and correct errors, inconsistencies, and missing values in the data. Users may
need manual inspection or third-party data cleaning and validation tools.
Complexity of Formulas and Functions: Excel's formulas and functions have the
potential to become intricate and challenging to handle, especially in large worksheets
with multiple calculations. Debugging errors or changing complex formulas can be time-
consuming and prone to mistakes.
Version Compatibility Issues: Excel files created in newer software versions may not
be compatible with older versions, leading to compatibility issues when sharing or
collaborating on files. Users may need to convert files to older formats or use alternative
methods for compatibility.
Extracting data from PDFs involves manual copy-paste for simple tasks, using built-in features in
apps like Excel or Adobe to import tables, or employing specialized tools (online converters,
Python scripts, AI parsers like Doc AI, Amazon Textract) for automated, complex, or scanned
documents (using OCR) to get structured data into formats like Excel or CSV. The best method
depends on PDF type (native vs. scanned) and volume.
Methods for Extraction:
1. Manual (Copy & Paste):
2. Using Software/Tools:
Excel (Data Tab): Import PDF directly, select tables, and bring data into Excel.
[Link]: Free tool specifically for extracting tables from native PDFs.
OCR (Optical Character Recognition): Tools like iLovePDF make scanned PDFs searchable
and extractable.
AI/ML Parsers: Use services like Google Cloud Document AI or Amazon Textract for structure,
complex tables, and context.
Programming (Python): Use libraries like tabula-py , PyPDF2 , or Adobe's Extract API for
custom solutions.
[Link]
[Link]
[Link]
[Link]
[Link]
Steps:
N/A
item String
N/A
classificationResult ClassificationResult[]
N/A
outputFileName GenericValue
3. Add another Sequence container in the Workflow Designer, after the first one,
name it Sequence2, and create the variables shown in the following table:
N/A
text String
N/A
taxonomy DocumentTaxonomy
N/A
dom Document
N/A
documentPath String
Table 2. Variables to be created
N/A
classificationResult2 ClassificationResult[]
N/A
outputFileName2 GenericValue
In the Properties panel, select the Ok option from the Buttons dropdown.
Add the following message in the Text field: "Select a PDF file".
5. Select the check box for the TopMost option. This brings the message box to the
foreground.
6. Add a Select File activity after the Message Box activity.
In the Properties panel, add the following text in the Filter field: Pdf
files (*.pdf)|*.pdf
Add the documentPath variable in the SelectedFile field.
7. Add an Assign activity after the Select File activity.
Add the outputFileName2 variable in the To field.
Add the expression ".temp/" + [Link](documentPath) in
the Value field.
8. Add a Deserialize JSON activity after the Assign activity.
Add the expression [Link]("DocumentProcessing
[Link]") in the JSON String field.
In the Properties panel, select
the [Link]
onomy option from the TypeArgument dropdown list.
Add the taxonomy variable in the JsonObject field.
9. Add a Digitize Document activity after the Deserialize JSON activity.
In the Properties panel, add the value 1 in
the DegreeOfParallelism field.
Add the documentPath variable in the DocumentPath field.
Add the dom variable in the DocumentObjectModel field.
Add the text variable in the DocumentText field.
Add the UiPath® Document OCR engine inside the activity.
Add your API Key inside the ApiKey field.
Add the "[Link] expression in the Endpoint field.
10. Add a Write Text File activity after the Digitize Document activity.
Add the [Link](dom) expression in the Text field.
Add the outputFileName2 + ".[Link]" expression in the FileName field.
11. Add another Write Text File activity after the Write Text File activity.
Add the text variable in the Text field.
Add the outputFileName2 + ".[Link]" expression in the FileName field.
12. Drag another Sequence container in the Workflow Designer, name
it Sequence3, and create the variables shown in the following table:
Table 3. Variables to be created
N/A
extractionResult ExtractionResult
N/A
validatedResults ExtractionResult
N/A
doubleValidatedResults ExtractionResult
N/A
dataset DataSet
N/A
i Int32
Create your taxonomy to be able to extract information from an invoice. You should be
focused on creating an Invoice document type, with the fields shown in the following
table:
Field Type
InvoiceNo Text
Subtotal Number
SalesTax Number
Total Number
Figure 1. Overview of the finished taxonomy with the previously mentioned fields
Creating your template
It is now time to create the template for the extraction process. Visit Load Taxonomy to
learn how to create a template.
For this example, configure the template using the following values:
Document Type: Invoice.
Template Name: Invoice-example.
Template Document: Select the target file.
OCR Engine: Microsoft OCR.
Languages: en.
Profile: Scan.
Scale: 1.
Once the taxonomy is defined and the template created, you can start configuring the
template by using anchors, meaning that the extraction area is defined in a box, and
anchors are used for defining the box position.
Check the following list for some pointers before starting adding anchors to your
template:
The anchor box should be as big as possible (height, width) to cover any type of
invoice number, long, short, big font, etc.
One extraction area can have as many anchors as needed, but only one defined as
main (the first one).
Use anchors formed of multiple side-by-side words.
The main anchor should be as close as possible to the extraction area.
The positions of the extraction area and the main anchor are fixed in the template,
even when applied to different documents. The only thing that can vary is the
distance between the main anchor and the secondary ones.
Let's continue configuring the template and see how you can extract data using an
anchor.
The main anchor should contain two or three words for high accuracy and
better results in the extraction process.
a. While still in the Anchor selection mode, select the desired area as your
main anchor.
b. Select Extract value for the desired field.
3. Set the secondary anchors:
a. Ensure you're still in the Anchor selection mode, and with the main anchor
selections activated.
b. Select the new areas for the secondary anchors.
c. Select Options for the desired field, and then select Change extracted
value.
Repeat the process until you finished defining all extraction areas and adding all your
anchors. Once finished, save the template.
Anchors in PDFs create internal links to specific locations (text or images) for navigation, often
called "Named Destinations," allowing users to jump within a document or to another file using
links like [Link]#nameddest=overview . You create them in PDF editors (like Adobe
Acrobat, Affinity Publisher), defining a location and naming it, then use the link tool to point text or
graphics to that anchor, making long documents navigable via a table of contents or interactive
elements.
How to Use Anchors in PDFs (Adobe Acrobat Example)
1. Create the Destination (Anchor):
Go to the Destinations panel (sometimes under Tools > Edit PDF > Link > Add or Edit).
Click to create a new destination and give it a unique, space-free name (e.g., "Chapter1Start").
Highlight the text or select the object you want to act as the clickable link.
In the dialog, select "Go to a page view" or "Open a web page" (if linking externally).
Key Concepts
Named Destinations: The technical term for anchors in PDF, acting as hidden bookmarks.
URL Fragments: For external links, you use #AnchorName at the end of the URL.
Common Uses
Table of Contents (TOC): Link chapter titles to the start of each chapter.
Important Notes
Browser Support Varies: Some built-in PDF viewers (like those in browsers) may not support all
destination types or link formats.
Accessibility: Anchors are crucial for creating accessible PDFs, helping screen readers navigate
content.
The benefits of applying RPA include cost savings by reducing operational costs, improved accuracy with minimal human error, increased productivity by allowing employees to focus on higher-value tasks, and enhanced compliance through consistent processes . However, limitations include reliance on rule-based processes, making it unsuitable for tasks requiring human judgment or creativity, and the initial investment cost .
RPA integrates with AI and other technologies like ML and OCR to enable intelligent automation. This integration allows RPA to handle more complex tasks involving semi-structured and unstructured data. For instance, AI can enhance decision-making capabilities, while OCR can be used to extract text from scanned documents . RPA's integration enables it to transition from simple rule-based automation to more dynamic processes that require cognitive abilities .
Process identification is crucial because it ensures that RPA is applied to tasks that are rule-based, repetitive, and high-volume, which maximizes return on investment. Identifying the right processes minimizes complexity, reduces exceptions, and leads to greater efficiency. Accurate process identification also aids in gaining executive buy-in by clearly demonstrating potential ROI and productivity gains .
Future trends in RPA include hyper automation, where RPA is combined with AI, ML, and other technologies for comprehensive automation; cloud-based RPA for increased flexibility and scalability; and citizen development, empowering non-technical users to create simple automation solutions. These trends aim to increase RPA's scope and usage across various industries, making automation more accessible and efficient .
Key strategic models for implementing RPA include the Centre of Excellence (CoE), RPA-as-a-Service, and building an RPA business. CoE involves a dedicated team managing RPA strategy and governance. RPA-as-a-Service provides external RPA management and tools, ideal for companies lacking internal expertise. Building an RPA business focuses on offering RPA services, requiring development of a niche and strong team .
Setting up UiPath involves several steps: creating an Automation Cloud account, installing UiPath Studio, and configuring connection to the Orchestrator. This involves creating Folders, managing roles and permissions for users, and creating Robot accounts linked to machines. Key components include Automation Cloud, Orchestrator for managing automations, Studio for development, and Robots for executing tasks .
Activity packages in UiPath, like UI Automation, System Activities, and Web Automation, facilitate diverse automation tasks such as simulating human actions, handling file management, and interacting with web elements. These packages enable robots to conduct complex tasks across various domains, such as finance and customer service, enhancing UiPath's adaptability and comprehensive automation solutions .
The core components of RPA include software robots (bots), RPA tools, and workflow designers. Software robots are programs that execute tasks like data entry, extraction, and system navigation. RPA tools, such as UiPath, Automation Anywhere, and Blue Prism, provide bot development and management capabilities. Workflow designers offer a visual interface for designing automation workflows .
Attended RPA involves bots working alongside humans in real-time to assist with interactive tasks, like providing information to a customer service agent. In contrast, unattended RPA involves bots operating independently without human intervention, typically scheduled or triggered by specific events to handle high-volume, rule-based tasks. Hybrid RPA combines both models, allowing for dynamic workflows that benefit from both human and bot efficiency .
Essential features of RPA include its suitability for rule-based processes, non-invasive integration with existing systems, and scalability to adjust to business needs. These features enable RPA to efficiently automate repetitive tasks without needing significant changes to existing IT infrastructure, while also allowing organizations to easily expand or reduce the number of bots as required .