When should Robotic Procedure Automation (RPA) be used?

Selecting the right technology for a given problem is a hard job because it involves trade-offs. This article reviews RPA use cases and compares this approach against systems integration.

Pablo Iorio
2 min readAug 30, 2018

When 2 or more separate systems need to exchange data, different integration styles can be used (file transfer, shared database, remote procedure invocation or messaging). Some companies are using Robotic Procedure Automation (RPA) for this intent, sometimes combined with Artificial intelligence to create smart robots. In which cases can RPA be considered a good fit? How does it compare with system integrations at lower levels?

For long-term strategic solutions needing scalability, high availability, fault tolerance and/or high throughput among other NFRs; systems integration is the recommended approach. It could also be the case when there is no UI access to the other application being integrated or complex orchestrations between systems are required.

When using RPA for short term tactical solutions, the exit strategy should be clearly stated. Otherwise, the organisation could end up with many small RPA solutions that you need support when any of your dependent system change any User Interface or business logic within; similar to UI automated testing. This becomes challenging if your organisation have hundred of applications that are constantly changing.

RPA is advisable on:

  • proof of concepts
  • tactical solutions with a clear exit plan because the long-term strategic solution is being developed on a separate stream
  • legacy products are not designed and built for integration and don’t have robust APIs
  • skilled developers might not be available to work on legacy systems
  • orchestrating across many vendor based systems that are currently marked for replacement in a few months
  • adding integration capability to third party systems that your organisation have no direct code access to, and the vendor has no eager to manage a separate version of their application with the feature set that you have requested

Comparison between both approaches:

--

--

Pablo Iorio
Pablo Iorio

Written by Pablo Iorio

I enjoy thinking and writing about Software Architecture. To support my writing you can get a membership here: https://pablo-iorio.medium.com/membership

No responses yet