Avoid RPA Death Spiral with Microservices

Author: Shane Larson

Robotic automation scripts can employ microservices to protect from the RPA Death Spiral.

Using Microservices to Avoid Pitfalls with Robotic Process Automation

Introduction

Robotic Process Automation has entered into the enterprise at an explosive pace, promising to assist organizations with their digital transformations. This technology has some pitfalls however, such as the RPA Death Spiral, where one broken bot can bring an organization to it's knees.

A little bit about Robotic Process Automation (RPA)

Robotic Process Automation is an amazing technology! Using RPA, non-IT users can create powerful automation scripts very easily and share them among the organization. Think of RPA as a system that can screen-scrape multiple active apps and pages and pre-fill them with information from all the pages, thereby eliminating loads of task-switching work that workers would have to do manually. This process has proven to increase productivity by over 100 times when done correctly, potentially saving an organization resources that can be used for more complex, though-intensive work.

Think about the company Mint.com. Their budgeting application automates the process of gathering your bank account information. In the most simplistic case, Mint logs into your bank account with your credentials and then screen-scrapes the content from your banking site., It then converts it to a data structure that can be used in many powerful ways that some banks can't, like to create budgets that help you analyze information across multiple banks and accounts.

Now imagine a system at your work where you have a robot that tracks what you are doing when performing a repetitive task across multiple systems. You might first go to a web site and look up a customer record, then go into another system and paste some info into it and push a button, on the next page you might copy in some more info from a third or fourth system. All the while, the RPA system is using a little bit of low-level AI to figure out some of the variations in the process, and creates an automation script that can be used to completely automate the process at the push of a button! Now you can just drink coffee and play Fortnite all day while your computer does your job! Or, maybe you can do some hard work thinking about how to create new opportunities for your business.

Either way, the robots are awesome and we love them!

The RPA Death Spiral

Due to its value the system soon becomes available to everyone in the organization. Business users don't have to engage IT at all to use the system, which is a huge benefit. As more employees get on board and start using the system some problems start to arise. For example, perhaps someone makes a minor tweak to one or more of the UI pages that several RPA automations depend on. Suddenly, an important bot is broken and it's an emergency for the entire organization and due to poor planning, the complexities of troubleshooting become evident.

This is called the RPA Death Spiral. One small change in the environment can create a black hole in which all robots die! In their article about the Dark Side of RPA, CIO.com states that broken bots result in repeated calls to IT to break fix their automation scripts. This is unplanned, disruptive work that takes the team off of strategic initiatives and in some cases can take an entire business line out of commission for days, resulting in lost business and tons of problems with bad data.

Avoid the RPA Death Spiral with Microservices

Not really robots, but that's ok!

We all love the robots, but it's important to remember that these are not robots in the way that most people think of them in popular culture. They are complex IT systems that are in the hands of non-IT users who do not necessarily understand concepts of scalability, modularity, reuse or information security.

For IT professionals, this equates to a need for greater planning and governance around the these issues within an RPA implementation. Standards for development will need to be created and controls should be put into place so that non IT users can have the tools to create their automation scripts safely before they are even created.

Robotic scripts will need to be audited and reviewed and weak points in the scripts need to be identified and addressed. Change management in IT will need to carefully consider bots that are dependent upon even routine changes.

Microservices to the Rescue!

Returning to the example of Mint.com, sometimes their automation scripts break too! A retail bank might change their UI or their authentication method, and the screen scraper bot is now broken.

How do they solve this? More and more, banks are beginning to create API-based services that allow for API access to banking. Mint can use those "microservice" banking API's for the purpose of aggregating the user's banking data, and eliminate screen scraping entirely for those banks that offer services.

This same pattern can be used within an automation environment. In order to do this, you first need to analyze the automation environment and find repeating patterns that depend on a single business function that is currently handled in a UI.

Next you would create a simple API-based microservice to replace the UI component, eliminating the need for the UI in this particular portion of the script. Most RPA systems can execute HTTP/RESTful calls so that they can call for data from the cloud, so this can be used to interface with the new microservice, which can be made to be more stable and more change-friendly, following industry standards for getting, setting, updating and deleting data in a system.

Conclusion

Robotic Process Automation is rapidly gaining traction within the enterprise due to its value, but sound architectural design and governance needs to be applied to the automation scripts in order to avoid the fated RPA Death Spiral where a single UI change made internally or externally to the organization can bring a company to it's knees.

With a little analysis and planning, valuable portions of the robotic automation scripts can be replaced with microservices, helping to protect the organization from the impact of the RPA Death Spiral.

What are you doing in your organization to plan for RPA?

Recent Articles

Shane Larson

Software Engineer - Solutions Architect

Builder of Tiny Cabins in Alaska


I'm a software engineer with years of professional experience in NodeJS, Solidity, React, C#, Python, JavaScript, Postgres, SQL Server, MongoDb.

My current focus is in the areas of Microservices, API Frameworks, Cloud Native Architecture, Robotics, and DevOps.

I work as a Solutions Architect in the financial industry.

I also build tiny cabins in Alaska.


Author of Building Microservices with NodeJs

Packt Publishing

Microservices enable us to develop software in small pieces that work together but can be developed separately, one of the reasons why enterprises have started embracing them. For the past few years, Node.js has emerged as a strong candidate for developing these microservices because of its ability to increase developers' productivity and applications performance. This video is an end-to-end course on how to dismantle your monolith applications and embrace the microservice architecture.

Powered by Contentful