It was only a few years ago that automation started to appear as a topic of conversation in executive-level meetings, between managers looking for the next thing that would allow them to optimize their businesses and make better use of their existing resources. In just a few years, automation has gone from being an experiment that a company might try to being an integral part of the way companies think, develop, and deploy processes.
Today, there is not a single boardroom where automation has not been at least discussed, if not implemented already. The issues under consideration are no longer proving that automation works, but on making automations sturdier and more reliable with the inherent changes that a company is going through.
As companies add more software robots, teams may be spending more time fixing robots and less time building new robots. According to the 3rd Annual Global RPA Survey Report by Deloitte, maintenance is the single biggest impediment to organizations scaling their robotic process automation (RPA) programs, and that only 3% of companies have scaled to more than 50 robots.
So, how can we cross this chasm?
Not just API, but RPA
In the past, RPA champions first needed to prove that the ROI was there, and that the savings were real. As automation began touching more aspects of the business, more processes and departments were involved, separate business functions came on board, and the questions turned more to properly scaling and reusing automation resources across departments.
In recent years, we have strived for a well-rounded automation effort that includes user interface (UI) automation as the default. We also want to make it easier for business users and subject matter experts to understand and contribute to automation projects.
But UI automation comes with its own challenges, particularly when automating web interfaces or products that receive regular updates. What happens with your automation when the interface no longer resembles the one that is coded into the system? It no longer functions properly. So, our engineers have been searching for ways to make automations more resilient to UI changes and enable teams to reuse UI components in their projects. With Object Repository, a feature released in our 2020 LTS release (20.10) for UiPath Studio, organizations can not only reuse UI elements but also make easy updates to processes when applications upgrade and UIs change.
It also becomes easier for teams to build common repositories of UI elements and update them across multiple processes at the same time, thus consuming less time within each team, and ensuring that junior developers work with the properly identified and tested UI elements for their automations.
Modern Design Behavior
When selecting a UI element, there is always a degree of uncertainty—will it work correctly when the robot is in a production environment? That is why our latest release includes a new feature to capture multiple versions of the same element on the screen, thus ensuring better chances of success. If one option does not correctly identify an element, there are always backups, ensuring the correct identification of a field, even when the interface has been slightly changed.
Imagine, for example, that your company rebrands all internal apps to a new color. Such a minor change might impact a poorly designed automation, but with the help of Modern Design Behavior you can ensure that the minor change will not create problems with your existing automations.
Beyond a powerful UI automation sits plenty of data, and RPA is being widely used in organizations to handle data across multiple business applications and systems. So, finding a way to reuse that information for numerous processes was one of the pain points that the UiPath team has focused on in the past years. But this comes with its own set of challenges.
In our latest release, we introduced UiPath Data Services, a product that enables you to model, manage, and store business/transactional data in a centralized manner. You’re also able to access the data faster and more seamlessly across multiple automations.
Data Services offers support for multiple data types to best suit your business needs, as well as role-based access control to ensure that only employees with the right credentials can use and see certain types of data. The control comes with three distinct levels: entity, row, and field control level.
This will allow you to access and manage data from multiple systems with robust access control, as well as reduce the efforts of using data within your RPA ecosystem. With model schematized data and storage of business data in UiPath Apps it becomes quite simple to generate and consume transactional data from Apps.
Beyond development, the quest for resilient robots
Most software robots are automating activities that depend on underlying applications and run-time environments. While business processes are usually stable, applications are updated more frequently and many cloud applications change every day (sometimes every hour). Similarly, run-time environments are constantly updated with patches, upgrades, and network updates. So, how do we:
- Ensure that all the automations based on these applications are running smoothly and without glitches?
- Know which of our UI elements needs revision?
- Know which of our data needs updating?
Every application or environment update is a potential point of failure for a robot. And whenever a robot is disrupted in production, humans must revert to manual processes, the RPA team must drop everything to fix it, and scaling decelerates.
But if you implement testing alongside your automations as an integral part of the process, these interruptions tend to be less significant and further apart. By continuously executing tests throughout your robot deployments, you ensure that your automations are healthy in production and diminish the number of interruptions caused by changes to the automated environment.
UiPath Test Suite enables continuous testing of your robots and the applications they rely on to uncover any underlying problems, allowing developers to proactively address issues before they impact the business.
With four different phases where UiPath Test Suite can come in to the process, the robots deployed have never been better equipped to handle any changes that might come their way.
At the end of the day, an automation needs to interact with a forever changing enterprise environment. Those changes include applications on different release schedules, and internal or external factors that may not be under the control of the RPA development team. We know it can be a challenge, and we know it is not an easy one to solve. That is why we are constantly thinking of what can be done in the development area to ensure that sturdier, more reliable automations are deployed.
If you want to be among the first people to find out about such improvements, sign up for the Uipath Insider Program and help us shape better automations for the future.
This is a companion discussion topic for the original entry at http://www.uipath.com/blog/automation-health-building-resilient-automations