Tech Breakdown is the opportunity to understand how developers are implementing Automation Anywhere through the lens of the value-added for their organization, and the technical solution that got them there.
This Tech Breakdown was written by A-Lister, RPA developer, and CoE lead Zeth Baker of Republic Airways. If you have a Tech Breakdown that you think the developer community would enjoy, reach out to us at [email protected]
The COVID-19 pandemic has created a need for flexibility and speed in creating new automation solutions, solving for unforeseen business changes, and increasing our overall development velocity to support our operation. As a regional airline, Republic Airways operates flights 24/7, and every second matters in the operation to make sure our flights depart and arrive on time. If you have ever flown, you know how important it is that flights take off on time, as nobody wants to be delayed while trying to visit their family and friends, go on vacations, or business trips. The bots we build support that goal of helping our flights to take off on time, along with easing the burden and stress of our business partners performing repetitive tasks.
The goal was to create a bot that was flexible, modular, and scalable allowing it to be easily modified as the business needs changed during the pandemic and for the unforeseen future ahead. The first problem to solve was automating some administration of existing bots to allow for more time for new development. The second problem was finding a way to provide the business partners with an easy method to execute their bots ad-hoc without the need of contacting an administrator.
From these needs, a new bot was born – affectionately named O.T.I.S. which stands for On Time Integrated Support. O.T.I.S. is helping manage Republic Airways existing 130 bots, automating about 50 processes on ten bot-runners with one user performing the development and administration of these bots within the organization. Now let’s dive into what O.T.I.S. has the capability of doing today which created a self-service model for our business partners:
First, a dedicated bot runner was created to manage this process of routing requests; the single bot runner is using the local Automation Anywhere triggers within v11. This bot runner also has full access to the control room and all its APIs. Let’s now look at the functions a little more in-depth and see how O.T.I.S is delivering value for the organization.
With so many uncertainties it was best if the business users did not have to learn a new application (using the Automation Anywhere Control Room). Second, it offers the flexibility to run their bots when they were ready, as the bots no longer could run on their standard schedules due to the evolving needs and changes in the business environment. Third, we needed a way to optimize the existing bot runners so that processes were not queueing up on a single bot runner and that tasks were evenly distributed to speed up the deliverables for each bot. In turn, this provided a better ROI and decreased the infrastructure footprint needed for the bots.
First, an evaluation is performed based on the type of trigger and the user to determine if the user has access to perform actions via O.T.I.S. which is done using RBAC (Role-Based Access Control). If the user has the correct roles, we proceed to the next step. If not, the user receives a notification letting them know that their request has been denied due to an access violation. RBAC is important because we don’t want just any user triggering any bot without knowing the implications or if the bot is ready to run or not. In all these actions communication is also key to the business partners so no matter the outcome a notification is always sent to let them know the outcome of their request.
Now O.T.I.S. will determine which action to perform using a combination of the system variables and defined trigger actions for each subcomponent.
Overall this set of actions empowers the business partners to easily manage their bot schedules via triggers and bypass the need to learn how to use the control or submit a request to an admin to perform these actions. It saves time for both the business and IT which is a win for the organization. It also has opened new opportunities to build bots that need to be triggered on demand because there isn’t a pattern or consistency that a schedule will accommodate.
As an airline there are many factors that can interfere with the standard flight operations; one example of this is weather patterns like hurricanes, snow, heavy winds, etc. When Irregular Operations (IROPS) occur within the operation, there are bots that need to run more frequently to keep up with the demand. The business users can also use O.T.I.S. to temporarily overlay a secondary schedule in the control room for the bot to run more frequently. For example, a bot currently runs at the top of every hour which is perfect for a normal day, but bad weather hits – now the data is behind schedule. A request is sent to O.T.I.S. and a secondary schedule is created based on the data provided from the user. The secondary schedule runs hourly, but 30 minutes past the top of the hour for only the next 12 hours. Now with the combination of the primary schedule and the secondary schedule for the next 12 hours, the bot is performing actions every 30 minutes to help the operation run more efficiently.
The administration time taken by automating credential management through password reset notifications, generating new secure passwords, and simultaneously updating the credentials for the bots to consume was taking the CoE away from additional automation development. Second, we wanted to automate the restart of the bot runner machines when deployment errors occurred related to control room connection or networking issues. Finally, we wanted to begin automating certain error handling operations that could provide additional stability for our bots.
Starting with credential management, login subtasks were created for all the applications bots were using as part of the standard development process. This way if something changed, only one bot would need to be updated for the login function while each bot that used that login function would work correctly without updating them individually.
Now, what about restarting those bot runner machines? We all know when one is unavailable the control room kindly notifies us of each failed deployment. 😊 To improve the overall uptime and decrease the number of deployment failures, all control room notifications are sent to O.T.I.S.
Here are a few ideas for what the future of O.T.I.S. might include:
The automation of all these functions is just one example of how Robotic Process Automation developers can take their own advice and automate some of their own repetitive processes within their realm of responsibilities. This also created more bandwidth to automate new processes, helping to address more of our digital transformation initiatives as an organization. Overall our goal as robotic process automation developers is to be advocates to help our business partners do their jobs as efficiently and accurately as possible. In the case of Republic Airways, it is also to get pilots & flight attendants to the correct airports on time, to make sure maintenance items on aircrafts are accurately documented, and to ensure that flights take off on time to get customers to where they need to go throughout the country.
A-Lister, RPA Developer, CoE Lead @ Republic Airways
Zeth is a self-taught RPA Developer working in the RPA space for 2 1/2 years using Automation Anywhere. In his free time, he enjoys hanging out with his 3 rescue dogs, cooking, and playing cornhole (bag toss).