Weigh these RPA benefits and challenges against APIs

APIs are a safe, reliable way for applications to execute a workflow. But they're not always available. Here's how to craft an integration strategy around APIs, RPA and even people.

RPA's gained popularity as a streamlined way to connect disparate systems and automate process flows, providing an essential data and application integration vehicle for software teams that lack the APIs for the job. And now, many RPA products include AI-driven capabilities that make them valuable to organizations chasing the goal of intelligent business process management.

However, robotic process automation (RPA) isn't the right approach for every situation, and it won't replace the need for dependable APIs -- which means RPA should act as a temporary solution in most cases.

Whether software teams devise an RPA strategy as a short-term fix or as an integral part of business operations integration, they need to properly prepare processes for automation to gain RPA benefits and avoid disaster.

Why is RPA used?

RPA is a good way to get data into and out of software when APIs aren't available, provided that the data transfer involves a simple and static interaction.

Enterprise development teams should add RPA to their automation and development toolbox, said Rob Dunie, analyst, presenting at the Gartner Application Strategies & Solutions Summit 2019 in Las Vegas, but make sure the toolbox is stocked with other options.

Goals of RPA
Learn the goals of RPA

RPA software follows a scripted set of actions that occur at the UI, which means it doesn't make decisions as much as it follows UI-driven rules, Dunie said. RPA functions resemble well-understood and tested techniques like screen scraping and record-and-reply, but they add a layer of visibility that can identify specific buttons and fields in the UI. Many RPA products also augment these scripted actions with machine learning and AI to add character recognition and chatbot text parsing. This is typically referred to as cognitive RPA, also known as intelligent RPA.

A temporary step-in for APIs

RPA benefits make it a complement to APIs, not a separate path. API development is expensive and time consuming, so RPA can act as a temporary fix to integrate data when an API isn't available for a certain application, as long as the actions to automate are routine. RPA connections are inherently more brittle than API integrations, and they are more likely to break during a UI change. However, a temporary RPA connection can buy an organization the time it needs to approve and develop the necessary API.

"It's not the thing you're going to keep around forever," Dunie said. "But it gives you a prototype or a stopgap measure until you know what to put there instead."

RPA can act as a core, long-term part of digital processes that doesn't undergo frequent changes. For instance, a business could use RPA consistently for batch processing tasks like invoice entry.

The upfront work in an RPA strategy

RPA doesn't come automatically; it requires software teams to diligently maintain their underlying application infrastructure in the same way they would for manual management. On top of that, RPA use requires that software teams thoroughly study, document and understand the systems and processes they're looking to automate, said Alan McSweeney, a business solution and data architect at EirGrid, Ireland's electricity company.

RPA's benefits shine in the quick implementation of process automation and decision-making, McSweeney said. "However, quick implementation can mean it's inconsistent, untested, not scalable, fragile, error-prone and difficult to support."

McSweeney stressed that RPA adopters must document the process targeted for automation and thoroughly understand the decisions that occur at every step of its execution. No amount of powerful tooling can fix flawed processes. He added that there are existing resources that can help organizations do that consistently, such as Decision Model and Notation, a modeling language for precise business decision and rule identification developed by the Object Management Group.

"Part of your RPA [strategy] is a discovery process where you go to the business and understand exactly how things operate," McSweeney said. "Document your current business process, understand their complexity, and get good at simplifying that business process." And don't expect it to be easy: Workers understand their processes, but they don't document them, and when they do, exceptions and changes mean the documentation is quickly out of date.

RPA challenges

For all of RPA's benefits, analysts also say there are several situations where its automation capabilities don't necessarily create improvements.

First, don't assume that you can automate everything. Dunie explained that automation is not the answer if the data isn't clean enough, the task requires problem-solving or decision-making skills, or customers expect a human interaction. He cautions that RPA adopters should not bury themselves in a cycle of chasing after systems that they cannot control.

Next, if you process ongoing interactions with a vendor or customer platform, you need an integration strategy that withstands UI changes and feature updates. RPA runs on fixed automated steps, and if the business must constantly monitor and fix automation outages each time something changes, it isn't saving anyone time.

RPA challenges
Don't make these RPA mistakes

Security is a major benefit of APIs and weak point for RPA, McSweeney said. RPA tools have elevated privileges in order to mimic human actions, and an attacker could use that unfettered access to do harm. Alternatively, a well-designed API is explicitly called and knows the access rights for the caller, then validates the actions.

Another RPA challenge is too much freedom, especially for business units that write their own RPA scripts. The IT department can easily lose control over application dependencies across the entire software ecosystem. One system update can break a workflow built on application integrations that you never knew existed, Dunie warned, so it's better to supervise RPA use at the business unit level. This will help properly document and test dependencies and ensure private data is still protected outside of automated scripts.

Finally, the fact that RPA extends the life of legacy apps is also a danger. "Don't abandon [application] modernization for an RPA Band-Aid," Dunie said. RPA can potentially connect and update legacy apps that weren't designed for integration, but that's a viable long-term strategy for enterprise architecture management.

There are plenty of business process management tools, low-code development modules, APIs and other integration platforms that can help round out an automation strategy without the risks of RPA. Focus on the process and the goals for the project, then the how, and test every implementation thoroughly.

Dig Deeper on Application management tools and practices

Software Quality
Cloud Computing