Orchestration

Your RPA will crash anyway – Monitor and react faster to unpredictable errors

Your RPA will crash anyway! You can not avoid this simple fact when automating systems out of your control. Instead of looking to RPA errors as a consequence of some weakness in your team, you should address it as a part of the process.

Robotic Process Automation (RPA) error handling has its particularities. Usually, we develop UI automation in systems that can change for multiple reasons. Therefore, in cases like web systems that are updated very often, RPA crashing is part of the game. Since it is tough to predict and prepare for those changes, it is better to detect and react faster to re-deploy a new version of your automation with less downtime.

Reasons for Changes in UI Workflows Addressed with RPA

In most cases, the RPA team can not predict or be aware of changes in the target systems the bots will face in the subsequent execution, as we discuss as follows.

New System Version

Many modern systems deliver updates without user consent. It simply updates its features, UI experience, and informs users through a release note or a log of changes. The intention is to constantly deliver system improvements to users who can figure out how to use the system after minor changes in the UI. However, if your bot automates UI actions based on component ID or is sensitive to component layout, it will no longer work properly.

Need to Upgrade to Access New Features

In some systems, users need to authorize upgrades or do it manually, giving more control to the IT department regarding system changes. It is not just automation; many ERPs have layers of customization and integrations that system updates might impact. Nevertheless, updating systems is a good practice to reduce security risks, improve performance, and have access to new features.

Large companies use several systems in each department. Therefore, it is common for RPA teams to get surprised by systems upgrades by IT teams without being notified.

User Interface and Workflows Impacted by Customization

Many systems support field and business rules customization for better modeling your company’s needs. It is not unusual to see your bots crashing due to some new customization that your team was not notified. Your company departments want autonomy to get the most out of the systems they use. The RPA team will need to face it and maintain the operation considering this uncertain element.

Detecting System Updates that Demand Automation Update

Not every system update will crash your bot. Not every bot crashing is due to a system update. Updating your automation to address system changes is unlike fixing an ordinary bug. The bot was developed following a series of predefined steps for a specific system version. If the system was updated, the first step is to understand the impact of the update and which automation steps were affected.

Thus, knowing why the bot is no longer working can reduce the time to fix it and, consequently, the downtime.

Checking if components exist in the UI

Independently, whether you are manipulating UI components using ID or visual recognition, check if the UI component is available instead of simply trying to change component states and throwing exceptions if a given action is not possible. If the expected form or window is available and the target component is not, the UI might be updated.

Monitoring Errors Statistically

RPA errors happen all the time due to system unavailability, invalid parameters, and other reasons. However, when the number of errors for a given time window changes abruptly, something probably has changed in the automation workflow, and some intervention by the RPA team is necessary.

Therefore, monitoring the statistics of errors is an excellent approach to detecting changes in the automation workflow without predicting every reason for an error to happen. The usage of notification tools can reduce the time to react significantly.

Quick Reaction and Downtime Reduction Due to System Changes

In order to monitor errors and react faster, it is fundamental to have your RPAs integrated with an orchestration platform. BotCity Orchestrator provides an error monitoring module that notifies RPA developers about errors, showing the stack trace, screenshot, and parameters associated with the failed execution.

For each error reported to BotCity Orchestrator, the following information is displayed:

For statistic analysis, you can use BotCity Insights, which provides success rate, ranking of errors, and other indicators regarding a particular automation or a set of automation.

 

Any abrupt change in your error patterns or distribution may indicate a change in your automation workflow. Finding the automations responsible for these changes and looking at its errors is a great starting point to figure out the problem and fix it as soon as possible.

Gabriel is co-founder and CTO at BotCity. He is one of the maintainers of BotCity Core, Marvin, and MarvinJ open-source frameworks. Follow me: https://www.linkedin.com/in/gabrielarchanjo/

Leave a Reply

Discover more from Blog BotCity - Content for Automation and Governance

Subscribe now to keep reading and get access to the full archive.

Continue reading