If you or your organization are into automating processes, you have probably heard of (or maybe are using) robots. Some robots are hardware-based and are used to perform mechanical tasks (or acrobatics) but in this article I will discuss software robots. The discipline has many names: software automation, software robotics, robotic process automation (RPA) – and in general they are all the same thing. The concept is fairly simple: get software to tackle the work that would otherwise have to be performed by a person. The way these tools perform, though, can be significantly different from one another.
Some robots are very basic in capabilities. They automate a simple process that needs to take place many times a day, that otherwise would be performed manually. A common example would be an email auto-responder or an out-of-office attendant. These tools do not do much, but do have value. The next level up the evolutionary tree is a macro. Advanced Excel users know about macros. These mini-programs either are a part of your work (as in Excel, where they are typically embedded in your spreadsheet) or stand alongside your work, repeating a series of steps that save user time and effort Example: Every time you click the macro button, it edits each name appearing on Sheet6, deletes any row where a first or last name is missing, reformats them to “last name, first name”, and then saves them in column C on Sheet1 - starting with the first blank row. Pretty sophisticated, but this technology has been around for 30 years or more.
Scripting is the next level up the tree. This technology has also been around for more than 30 years and is usually a mix between a macro language and a programming language. Its major difference from the Excel macros described above is that it can work between many different applications, web pages, or document types. Macros and scripts have a common weakness though: they do not adapt to process change very well (in some ways very much like people, don’t you think 😊?). If a file format changes or if in our macro example, the names are loaded into the wrong place, the macro or script tends to break immediately, and all the work needs to be performed manually. Additionally, macros and scripts tend to be difficult to maintain as they are often cryptic to read and difficult to modify and test.
Another level up the tree is are high-level scripting languages. These are akin to programming languages but tend to be oriented towards solving a particular type of problem. There are graphics languages that are great at solving problems with graphics and images. There are also business and scientific languages that solve complex business, financial, or scientific challenges. Depending on their level of sophistication, some of these languages can solve their own problems, or at least clearly identify a problem to a human, who can help solve the problem without breaking the entire process.
At this same tree level, we also find workflow engines. While graphically based, most of these tools are essentially high-level languages with a lot of pre-built connectors that, for example, leverage the data you have in your customer relationship manager or CRM with data in your finance system or data on LinkedIn, D&B, etc. You can build a workflow and have something take place automatically each time a new contact enters your CRM system, for example.
As we continue up the tree, we find bots. These are software robots that are similar to the high level languages mentioned before, but they perform by understanding written or verbal requests and answering in plain language. Apple’s Siri, Amazon’s Alexa, and Microsoft’s Cortana are examples. These bots are constantly improving, but are still fairly limited in capability and don’t learn very much from incorrect interactions with their human friends. If the bot mispronounces a name it can’t learn from you the correct pronunciation, for example.
Our final step up the tree is a learning robot. These might use any of artificial intelligence (AI), neural learning, or just some clever algorithms, but their common theme is they can learn from humans or accumulated business data, learn from their mistakes, or all of these. A lot of research is occurring in this area now, and there are a few products that leverage these techniques. Many of these tools still have very high costs of acquisition and also high training costs. Because of the heavy costs and time involved, these tools are still too expensive to be widely used, but expect to see their prices drop over the next several years.
In a future post on robotics I will discuss a few ways that businesses can leverage some of these tools to improve productivity.
Copyright Cove Hill Consulting 2021 | All Rights Reserved