Brief Introduction to RPA
Thank you for choosing Laiye RPA, the world's leading Robotic Process Automation (RPA) solution provider.
Going with Laiye RPA is definitely a wise choice! As of press time, Laiye RPA is comfortably ahead in terms of design and technology among many Chinese RPA platforms, and is comparable to international RPA platforms.
If you already have experiences with RPA, then feel free to skip this chapter and start learning Laiye RPA. Otherwise, let's dive right into RPA!
Basic Knowledge of RPA
In this technology driven world, employees often encounter a lot of repetitive, tedious actions on their computers such as downloading documents, recording invoices and audits, and checking emails. It is not only easy for employees to make simple mistakes while completing these tasks but also to feel bored and devalued. For example, financial employees use online banking software to transfer money to their clients. While making one transfer might not be troublesome, making hundreds or thousands of transfers would drive anyone crazy. What's worse, even one mistake can lead to terrible consequences. Just imagine if an employee accidentally enters an extra zero when specifying the transfer amount… Such things happen all the time.
The finance industry in particular suffers from this type of repetitive and tedious tasks, and in 2017, the Big Four accounting firms (E&Y, PWC, DTT, and KPMG) introduced the concept of financial robots to China, trying to have software bots , or we can say digital labor automates the repetitive work on computers.
People soon realized these software robots can be applied to much more than financial tasks, and this idea quickly gained traction in other fields that have similar needs, including logistics, sales, and HR. Across the world, software robots are leading a new wave of automation that can free employees for more productive and inspiring work, and from here, a new industry that manufactures software robots emerges, known as Robotic Process Automation (RPA).
While RPA is a recent development, the idea of automating software processes is not a new one. For example, it was over two decades ago when MicrosoftOffice introduced "Macro", which allows users to record their actions and run them as many times as they want.
However, RPA differs from early software process automation in its non-invasive approach to interact with existing systems: RPA does not need to modify the existing software to automate it. Even if the software itself does not provide any support for automation, RPA can still automate tasks by simulating how humans interact with the software. Imagine if an automation requires multiple software systems, possibly developed by different companies, to work together. Traditionally, this would require developers to modify all these systems to implement a common interface, but by using RPA, no change needs to be made to these software systems. Instead, RPA creates a software robot that simulates human actions, such as keyboard and mouse movements, to solve the challenge. This is one of the fundamental strengths of RPA.
It's not an overstated forecast that RPA will soon become a burgeoning industry. There have been several foreign unicorn companies worth billions of dollars in the RPA field, specializing in providing RPA products and services for other industries. Foreign RPA products have performed well to meet the market demand, but when entering China, they become more or less "unacclimatized". For example, they are not satisfying enough in terms of the language and the support for Chinese online banking software. Moreover, they still lack localized technical services in China, because of which technical problems can't be solved in time. In this case, Laiye RPA would be your wisest choice.
Introduction to RPA Platform
In the last section, we have learned what RPA is and why we need it, but one question remains: how do we efficiently build software robots to automate tasks? Let's break down what needs to be done.
In order to implement RPA, we have to:
- Analyze the existing workflows to sort out what aspects can be automated by "software robots",
- Create the "software robots" and teach them how to read and operate all software systems used for the workflows,
- Deploy the created the "software robots" to the production environment, run the robots, monitoring their status, and resolving any problems as they arise.
Step 1 is completed by experts of the industry. For example, to create a financial software robot, we need financial experts to analyze their day-to-day workflows. Step 2 is completed by IT experts. For skilled developers, implementing a robot to automate human work is not difficult, especially using powerful programming languages like Python. Step 3 is completed by regular employees, who only need to press a button to run the robot before they kick back, relax, and let the robot do the work. Sounds great, right?
However, in practice, this is not the case. Consider step 2. IT experts are specialized in their own fields and are often not familiar with the business itself. The workflows analyzed by business experts may not be well understood by IT experts, and therefore they struggle to build the robots to behave as desired. Moreover, in step 3, while regular employees can run the robots, they cannot resolve any problem that arises in production, since they don't understand how the robots work. All they can do is to ask the IT experts for emergency support, which could bottleneck critical work from being done for days.
For example, as an IT person, the author always gets a headache when he sees financial terminologies like "operating assets" and "accounts receivable." Likewise, the "handle" and "thread" that are familiar to the author are probably confusing for most financial experts, not to mention regular employees.
How to solve these problems? As easy as cooking instant noodles, the core concepts of building RPA robots are:
- Prepare an RPA platform with frequently-used RPA functions. After this, "the instant noodle" is ready.
- Enable business experts to build their robots on the existing platform, which is as easy as cooking instant noodles;
- Allow regular employees to understand the general rule of RPA robots, and to modify it when necessary. Thus, IT experts are no longer needed in the process of "seasoning instant noodles";
- In this way, no help from IT experts is needed while creating RPA robots. The world becomes better!
In order to achieve the above concept, a general RPA platform should include the following three components:
- Development tools: powerful and easy-to-use tools to allow ordinary users to build and debug "software robots" with minimal training;
- Operation tools: tools to allow ordinary users to deploy, run, and monitor "software robots" created by the development tools;
- Control center: centralized control tools to allow users to coordinate the deployment of "software robots" on multiple computers, enabling users to distribute and schedule tasks amongst groups of digital workers.
Then how to define RPA platform? An RPA platform decomposes software robots into simple, prepackaged functional components, which are like LEGO blocks that even business professionals without an IT background can use to assemble a sophisticated RPA bot. Moreover, this decomposition allows regular employees to understand the basic principles and implementation of the robot, enabling them to carry out basic maintenance all on their own. These changes completely eliminate IT experts from the equation by demystifying the software robots' implementation, and thus the challenges are resolved.
A good RPA platform is:
- Powerful , able to automate any task, no matter how complex, with a large toolbox of functional components,
- Simple , easily mastered by ordinary employees without assistance of IT experts,
- Fast , allowing ordinary employees to quickly implement their own robots in a convenient way.
RPA platforms have made great efforts towards these indicators,but many fail to achieve satisfactory results. The main reason is that platforms often have to make a trade-off between these indicators and struggle to balance all three. Making an RPA platform powerful often sacrifices its simplicity, and a simple platform might not be fast enough. For example, some RPA platforms directly use the Python programming language to implement RPA. While Python, being a professional programming language, is certainly powerful enough, it is not easy for business experts and ordinary users to master. Therefore, these RPA platforms ignore the two indicators--simple and fast--, and the result is naturally unsatisfactory.
Laiye RPA is also an RPA platform. In order to balance these three key indicators of the RPA platform, Laiye RPA has made a lot of efforts. Some efforts can be found in the software interface, but some efforts may not be seen. For example, for some key design concepts of Laiye RPA, our designers spent half a year to conduct in-depth research, iterated many rounds through discussion and experimentation, and finally came up with a relatively complete plan. Therefore, we are confident to say that Laiye RPA is a leading RPA platform, carefully developed to excel in and balance all three indicators.
Indeed, Laiye RPA's advantages are credited to not just great efforts but also rich experience. The core team of Laiye RPA has been working on process automation since 2001. After an accumulation of more than 10 years, Laiye RPA products have been far ahead in product design and technical solutions.
Development History of Laiye RPA
As we have discussed earlier, in professional fields like finance, logistics, sales, and human resources, there are a large number of simple and repetitive software operations that turn valuable employees into human robots, but such problems also arisen in video games. In order to maximize the time players spend in their games, many game designers intentionally created game mechanisms that force players to complete repetitive tasks over and over in order to progress in the game. These game mechanisms, just like the repetitive work tasks, make those who are forced to grind through them miserable.
As a result, people created software robots to automate repetitive tasks in video games, and the most famous one is Quick Macro. Launched in 2001, Quick Macro only supported Windows client games at the time, but related products, such as Webpage Quick Macro, launched in 2009, and Mobile Quick Macro, launched in 2013, added support for web games and Android games. Through such a set of product systems, the "Quick Macro" has swept across all the mainstream video games and accumulated valuable technology in the field of software automation.
The primary reason for Quick Macro's success is not its technical capabilities, but because of its simple and easy-to-use design philosophy. Quick Macro itself is not a software robot, but rather a set of manufacturing tools for software robots. This set of tools need to be easy enough for gamers who are not IT experts to master. Quick Macro has achieved great success in this regard. Today, tens of thousands of games can use it to create their own software robots and share them with other people. Most of them are not proficient in IT, and some have not even received higher education.
In a sense, Quick Macro, launched back in 2001, can be regarded as a pioneer of RPA. In fact, when the concept of RPA started to gain traction in China in 2017, many related articles used Quick Macro as an example of RPA. Although Quick Macro is designed specifically for video games, and therefore differs from "software robots" in finance or other fields, but because it is well-known and easy to understand, it is often used to explain the concept of RPA.
So, what is the production team of the Quick Macro doing now? Have they made any progress in RPA? Of course. They carefully analyzed the specific needs of RPA and innovated on the success of Quick Macro to create a product that not only takes advantage of the decades of experiences accumulated through Quick Macro, but also actively meets the needs of RPA. Through years of hard work, they created a powerful, easy to use, and fast RPA platform. That's right, it is Laiye RPA!
Now, we finally understand why Laiye RPA is able to stand out amongst all RPA platforms.
Since they cater to different fields, Quick Macro and Laiye RPA have some key differences in their basic design concepts, and in terms of the technology used, the differences are even more drastic:
- Quick Macro is optimized for individual users, allowing users to customize the app's user interface, set hotkeys, and use multi-thread operations, but all these functions are not needed and therefore removed in Laiye RPA;
- Laiye RPA is optimized for enterprise users, supporting SAP automation operations, visualized flowchart displays, and a distributed control center, all of these features are not available in Quick Macro;
- The main advantage of Quick Macro is the high operation speed. Because the game screen changes rapidly, it cannot keep up with the game if it is slow, but because the size of the software is small and the download bandwidth of individual users is limited, these indicators are not important for Laiye RPA;
- The main indicators of Laiye RPA are good runtime stability and high error tolerance. Every time it encounters an unexpected situation, it would rather stop running than blindly continue operating. In addition, each run of Laiye RPA is logged. All these indicators are far beyond those of Quick Macro.
Therefore, whether to use Quick Macro or Laiye RPA depends on your specific needs: if it is for video games, Quick Macro is recommended; if it is about automating business processes, you should definitely use Laiye RPA.
As mentioned before, a general RPA platform contains at least three components: development tools, operation tools, and control center.
Laiye RPA is no exception. In Laiye RPA, these three components correspond to our RPA Creator, RPA Worker, and RPA Commander, shown in the following figure:
If the operation scale is small, and only a few computers are needed, RPA Creator can create the processes, package them, and distribute them to each RPA Worker directly, and the whole procedure does not require RPA Commander. If the operation requires the coordination of a fleet of computers, it is easier for RPA Creator to upload the processes to RPA Commander first, and RPA Commander can handle distributing the processes to each RPA Worker and organize them to execute the processes in an orderly manner.
This article is a guide for Laiye RPA developers, so its main content is about how to use RPA Creator to create a software automation process, as well as some tips for best practice. There are some sections involving RPA Worker and RPA Commander, such as how to package and distribute a process to RPA Worker, and how to upload a process to RPA Commander.
While reading this tutorial, it is recommended that you should go to Laiye RPA's official website https://www.laiye.com/en/to download and install the community version of RPA Creator. It is free, and you only need to log in online or activate it offline for unlimited use.
If you have a little programming experience before and understand the concepts of variables and conditionals, then reading this article will be a breeze. If you don't have that kind of experience, don't worry; we have you covered. In the last chapter of this tutorial, we have attached an appendix that introduces some basic programming concepts crucial to understanding Laiye RPA. Read the appendix first before the following chapters if you need a refresher on programming fundamentals.
Ready? Let's start our Laiye RPA journey!