Peter Henstock, Machine Learning and AI Technical Lead, Pfizer
Robotic Process Automation (RPA) has quickly taken root across many industries over just the last few years. The technology presents an opportunity to automate the everyday repetitive tasks allowing skilled workers to tackle more valuable, cognitive problems. It is not surprising that the overall RPA market revenue is predicted to expand from $1.3 billion in 2019 to $2.9 billion by 2021and $4-7 billion by 2025 since fills a gap between manual computing and software engineering. Although the term RPA conjures images of robot armies, it is a software program that functions as a user to open other software, copy and paste text, fill in forms on corporate programs, and automate manual steps to both save money and maximize human potential. It offers the advantage of running 24/7 with perfect accuracy, logged verification, and the ability to scale across the enterprise.
Figure 1 shows a histogram of tasks performed in a typical organization that follows the power law in shape. The most common tasks will be automated by internal IT and software engineering groups as they represent the critical tasks and strongest return on investment (ROI).The least frequent will likely never be automated since the time and effort are not considered justifiable. Between these extremes are scripts or informal software code that execute specific functions. Some scripts may be reusable in that they work with different data sets or allow users to configure different options, whereas other scripts are narrowly focused. RPA operates in these last 3 ranges with medium to high volume automatable tasks that require minimal intelligence or human decisions.
Figure 1.Division of solutions for various tasks including RPA Given that solutions already exist, why do we need RPA?
Writing software always means specifying requirements to achieve an objective and coding a solution. The simplest specification to make tea would be simply steeping tea in hot water for a few minutes. This level of detail is not only adequate but ideal for many cases. Excel calculations and macros provide quick answers without requirements, formal testing, or even version tracking for the spreadsheets which work fine for individual non-critical business operations.
RPA is the primary technology for rapidly automating existing user processes across industries
That said, studies have shown that, even without the macros, 88% of Excel spreadsheets contain errors.
In contrast, a full specification for making tea would require a tea cup, a volume of water, a thermometer, a timer, a measured quantity of tea, etc. It defines what should happen when the thermometer or timer is broken. It would check that the tea cup is large enough to hold the volume of water and describe the result otherwise. The software engineering life cycle describes the formal process of software development from gathering requirements to coding, testing, documenting and delivery. Even in its agile form with minimal up-front specification, the software development process is necessarily formal to understand and capture the objectives and deliver a verified solution that can be understood, integrated into other solutions, maintained and perhaps reused in the future. These are critical, particularly as the number of users and size of the solution increase.
RPA fills the space between the lightweight macros and heavyweight software engineering to efficiently provide solutions. It sometimes utilizes a recorded script (like Excel) that enables a solution to be developed without programming, but more commonly uses a scripting language to construct a rule-based workflow. RPA adds enough documentation and tests to achieve its goal without being generalizable. Unlike the Excel macros that function only in Excel, RPA operates at the user-computer level so it mimics a user actions. This user-interaction approach can even transform the automation of legacy systems written by former employees with no documentation. Rather than trying to understand the system and programming interface (API) yet alone try to rebuild it, RPA can interact with the legacy system and add functionality with a user-level business process understanding. Furthermore, RPA solutions solve existing challenges of software versioning, deploying the software across enterprise computers, auditing processes, enabling access security, load balancing computationally-intensive tasks across systems and even disaster-recovery.
Can we replace our software infrastructure with RPA?
With most businesses today centered around data, companies aim to effectively leverage their data to make better, timely decisions. Software engineering focuses mostly on the storage and access of data, whereas RPA focuses on the user workflows. In that sense, RPA depends on the formal software engineering management of the data and enhances user activities through automation. RPA only manipulates data through the software system’s user interfaces which is slower and less efficient than API access, but RPA can be scaled to overcome these limitations. As companies productionize 100s of RPA scripts, the challenge of maintaining, interconnecting and perhaps reusing the scripts will require additional specifications, testing and documentation that encumbers their software engineering counterparts.
RPA is the primary technology for rapidly automating existing user processes across industries. Accounting and finance organizations have led the way due to their repeated auditable processes. In the pharmaceutical space, Pfizer is using RPA for report processing for the FDA, clinical trial management and product labeling. The range of opportunities seems almost endless.
Although RPA has already added significant value to the workplace, it doesn’t currently use artificial intelligence (AI). General purpose AI tools such as OCR enable RPA workflows to scan and recognize texts, and some natural language processing capability has entered the workflows but the current RPA technology is mostly running a set of business rules. Enabling AI to assist with each individual’s business decisions will require machine learning systems to be trained for each specific human decision. Such training currently requires data science expertise, but recent AutoML advances show promise in training AI systems to make decisions automatically. This enhancement of smart RPA capabilities will certainly transform the workplace.