By Brett Fraser on Aug 10, 2020 8:56:39 PM
It’s one thing to deploy an automation, and it’s another to properly manage the performance and configuration of that automation through its lifecycle. If you think of automation as children, we give birth to them, we nurture them, we teach them and we help them along the way as they grow and mature. If we simply made children and moved on to the next kid, we’d fail as parents and miss out on influencing their growth. Instead, we constantly enhance their lives by pushing them to the latest and greatest. We should be doing the same thing with the automations we build and deploy.
Many of us deploy automation and watch their transactions and feel good because it works. However, during the lifecycle of the automation many factors can change including the environment and the features within the automations. The automation will still work, but it may not be the best version of itself over time. How do you know that an automation you deploy in July is the best it can be in December of the same year? How do you know that your automation is compliant with the latest and greatest product version or enhancement? How do you know that your automation or RPA environment can scale for the future?
Release and Configuration Management provide methods to identify potential manufacturer recommended product enhancements that can be applied in production and deploy those changes in a systematic manner. Enhancements and patches are applied through change control to ensure the most secure, stable and compliant product is in place, but how do we perform release and configuration management to automation in production? Just like parents nurturing children, we can enable automation to perform the same function. Here’s the four components needed for automated release and configuration management for RPA.
Identify the New
RPA is a very versatile tool that can be molded to the majority of business needs through proper planning and scoping, but change is inevitable and it is better to embrace the change in technology than to fight it. Server manufacturers and RPA platform providers continually enhance their products to give you the latest and greatest. RPA is no different. UiPath pushes continual platform and software releases to fix bugs and to patch and enhance capabilities. Many of us want to be fully compliant with the latest releases. One way to identify what’s new and determine if the update would apply to your needs is to build and deploy a “config check” automation that scours your platform, Orchestrator and workflows to identify the release affected component and flag it if the version is not the latest and greatest. The config check automation creates a packaged punch list of components in your production environment that could benefit from the update and assesses the impact of the release. Now you’ll know what needs to be changed through the config check automation.
Schedule the Change
Communication is a critical factor in successful automation management. We don’t want to just apply patches and updates all willy-nilly. The best way to plan for the right update or enhancement is to work within a change advisory board (CAB) to identify what change is needed, assess the impact and schedule the change so all parties are aware of what’s to come and when it will happen. Smaller organizations may be agile enough to do this quickly as the automation developer may also be the IT guy and CTO. However, In large organizations formal change control is crucial, and automation can help here too. A “CAB bot” can be deployed to take the output from the config check automation and open the change request for the change advisory board to review and approve. Integrations can be built to allow the change request to be populated into the CAB system of record for the human-in-the-loop to review, reject or approve.
Apply the Update
Configuration changes and updates are typically applied by RPA developers or IT professionals. If automation is configured correctly, we have the opportunity to leverage an automation to apply patches and updates. The “Updater” would simply take the manufacturers recommended release and change the code. However, we must also plan for a pre, during and post flight check of this update as part of the Updater logic to ensure all the right conditions exist before the update is applied. The Updater can compare and update the CAB system of record by working with the CAB bot to give the full steam ahead order and apply the update. Once the update is underway, the Updater can set expectations on what happens first, second and third from the manufacturer’s release documentation, provided by the config check automation, and make sure each step is executed accordingly. Lastly, after the update is applied, the Updater automation can validate and test operational capability of the updated automation by performing unit testing. However, if anything goes wrong along the way, the Updater must be able to determine what went wrong with the automation update and immediately roll back to the last known good configuration and update the human-in-the-loop to begin troubleshooting before the update can be properly applied.
Review the Results
Once the patch or update is applied successfully and all of the checks and balances have been confirmed, it is a good practice to post the results of the update for change advisory board review and release management archive. Remember, you may be updating multiple automation across multiple environments. You may also have to work through the one-offs that didn’t make it through update successfully. The “Reporter” automation works with the CAB bot and Updater to gather the results from a change and list out what went right and wrong.
Automated release and configuration management for RPA can accelerate the release cycle within a large organization and streamline the process to perform upgrades and enhancements. Automations can be custom configured to follow the process within any change advisory board to ensure full compliance and continuous service improvement. This same logic can be applied outside of the RPA stack and can build efficiencies for any software or hardware environments through automated release and configuration management. Enabling an “automation for automation” strategy will help nurture your RPA and ensure they’re enhanced properly throughout their life. Picture an automated system of release and configuration management working within your IT stack to provide thousands of compliant and controlled updates and enhancements monthly. This automated system for release and configuration management will help increase efficiency, reduce cost and enhance system and process reliability. Don’t you want the best for your children and automation?