UiPath Studio, Orchestrator & ReFramework#
UiPath is a leading RPA tool that enables to design, develop and deploy Business scale use cases with ease. UiPath consists of a Studio and an Orchestrator. A studio is a tool where developers will be able to design and develop RPA processes to the Orchestrator or publish a reusable library.
Orchestrator is a centralized robot management dashboard that helps in managing machines and robots along with a ton of additional features. Like Queues for enabling multiple robots to work on the same problem, Scheduling which helps in scheduling jobs and Assets to store config data and for securely storing credentials.
I’ll talk about UiPath’s Studio & Orchestrator along with their attributes, functionalities and a Standard framework that can be used for implementing business scale solutions with ease that handles all system-level and business level exception on a transaction based workflow. The framework is called as ReFramework. Let’s dive in then.
UiPath Studio is an IDE (Integrated Development Environment) that helps in design, development, debugging & publishing either a process or a library. We’ll talk more about what Studio offers.
The following are the key features that are offered with UiPath Studio:
Library: A rich collection or pre-build libraries that are developed by both UiPath and Community developers. UiPath has a huge community that enables us to develop better solutions.
Recorders: UiPath Studio has a set of recorders that enables us to easily automate UI Based automation that includes both desktop and web. The Desktop recording helps in automating windows application while the web recording enables automation for the web, from getting the weather report to handling a business class SAP Application. There is also image and Native Citrix Recording that can be used for automating Citrix.
Scraping: Scraping will help in extracting data from structured UI elements like Amazon’s product listing. UiPath can literally extract data from anything to any kind of data that facilitates data segregation and manipulation which is an important aspect in a business use case.
Computer Vision: Computer Vision is an AI-Enabled system used for automating Virtual Desktop Environments (VDIs). Before UiPath’s Computer Vision, these environments were majorly automated with the help of image identifying mechanism since the elements cannot be identified in a VDI Interface.
What Computer vision offers is that it uses AI to analyze the snapshot of the VDI’s Screen to identify elements with which you can automate VDI systems as you do for your local OS-level application.
Debugger: UiPath Studio has a powerful debugger that helps us to effectively backtrack and eliminate/ fix any bugs or anomalies in the workflow. You can slow down the process of the workflow by using the Slow Step or Step by Step or use breakpoints.
Version Control: Version Control comes handy when you’re working with multiple developers on a single large project. It helps in tracking the code/ Project changes over the course of the Project’s life cycle.
Each working/ Stable module should be committed to a version control which will help us in creating a robust solution where you can roll back to any version or collaborate seamlessly with your co-developers.
ReFramework: ReFramework is the UiPath’s Template that has a clearly written structure that is used for building a robust large scale solution that works based on Queue Transactions.
UiPath’s Orchestrator is a centralized system where you can manage, deploy and secure your UiPath’s robots at scape. We’ll discuss more on the attributes of the Orchestrator. The following is how an Orchestrator will look like.
UiPath’s Robots are generally the workers that will execute the business workflow which can be managed in the Orchestrator. There are different scenarios where a robot needs to be employed. That’s where UiPath offers two kinds of robots namely, attended and unattended robots.
Attended robots are used in business activity scenarios where human intervention is needed. This will speed up the time-consuming, error-prone repetitive front-desk tasks performed by humans.
Unattended robots are majorly used for the scenarios where human intervention is not needed. It can perform any type of back-office tasks. These robots can run on either physical or virtual environments. They are capable of working round the clock at scale. Isn’t that cool?
Machines are physical entities where you need to run the workflow by a robot. It can be either the same machine or the target machine that could change frequently. That’s why UiPath offers two entities. One is a Standard machine and the other is a Machine template.
You can further register robots with the help of the created machines. Thus, the Robot has two variants which are Standard and Floating robots. Standard robots can be only deployed to a Standard machine while the floating robot can be deployed to both, Standard Machine or to a Machine Template.
Processes are the workflows that were published from the studio which can be deployed to any robot environments. You can manage processes with the previous version where you can deploy an older version to the robot environment.
We’ve already discussed libraries in the UiPath’s Studio section. Libraries are just reusable module or components which can be used anywhere in the workflow. It usually works as a plug & play. You can manage the published libraries in your orchestrator.
Assets in the Orchestrator acts as a dictionary which will have config data or any other text, bool, Integer, and credential data. Thus, the assets act as a centralized resource that can be fetched anytime during the execution of the workflow. We can also store application credentials in the assets which will be encrypted with the AES 256 algorithm.
Queues & Transactions
A Queue in the Orchestrator acts as a container that will enable us to hold any amount of data for later execution. A processed queue item is known as a transaction. So, the question is when can queues be useful? Consider this scenario where a huge set of dataset needs to be processed.
Having a traditional workflow will take ages to complete and is ineffective. What can be done is, a dispatcher process will upload or push the dataset items to a queue and multiple robots can work on a single problem thus completing it more efficiently than the traditional one.
So, we’ve come to the end of this blog post. We now know how UiPath works, it’s environment, Studio, Orchestrator and it’s standardized template named as the ReFramework. I’ll talk more about UiPath from a technical perspective when we meet next time.