In July of 2020, IBM announced that it was acquiring a relatively small Robotic Process Automation (RPA) company with unique Artificial Intelligence (AI) capabilities called WDG. While this move solidified IBM’s offerings in the hyper-automation arena, and rounded out the IBM Automation platform to be entirely sourced by IBM software, it also presented some interesting challenges. First and foremost is market-share.
It is important to note that WDG, now called IBM RPA, is arguably as good as, if not superior to the other leading RPA vendors in many ways. The platform supports a large number of commands (600+) that give developers much more control over what the bot is doing vs. the competitive tools. In addition, there are very powerful AI and chatbot features and integrations that are impressive differentiators. Further, the unique architecture allows for new ways to deploy your new bots concurrently so that it can provide a dramatic decrease in the capacity needed to run multiple bots.
Another significant value proposition for IBM RPA is that it is part of a larger “hyperautomation” offering from IBM. Very few (if any) other software vendors can provide the full end-to-end capabilities needed in a hyperautomation platform. Since RPA is only one part of the larger automation story, IBM RPA becomes more than just a single, stand-alone tool. Instead, organizations can utilize the capabilities of RPA where it makes sense, like plug in other capabilities such as workflow, business rules, content management, and data capture.
The problem is this: how can IBM break into a fairly saturated market, especially since prior to this offering IBM was rebranding and reselling Automation Anywhere’s platform, so most of IBM’s go-to customers were already using the IBM flavor of Automation Anywhere? There is of course a learning curve, which is interestingly not much of an issue and we will address later. So even if an organization currently running IBM Automation Anywhere wanted to switch to the new IBM RPA tool, they would need to manually re-write all of the current bots, right? Wrong.
Removing the Barrier to Adoption
Immediately following the announcement of the new IBM RPA platform, Salient Process went to work on addressing this potential barrier. If you are familiar with Salient, you know we are always looking at ways to enhance and add value to the existing IBM Automation technologies. If this is news to you, I highly recommend checking out some of our blogs on our other accelerators here.
Our goal was simple in concept: find a way to automatically convert an IBM Automation Anywhere bot to an IBM RPA (WDG) bot with minimal manual input. However, what seemed to be straightforward in concept proved to be a bit more challenging in practice. The main reason was that while most RPA platforms are doing very similar things (automating the repetitive and manual activities of humans), there are nuances in the approach that need to be considered. For example, updating an Excel spreadsheet can be done by emulating the mouse clicks and keystrokes, but it can also be done in a more code-based approach via published libraries for the Microsoft Office suite.
Without going into too much technical detail, there were subtle (and not so subtle) differences in how Automation Anywhere scripts its bots and how IBM RPA is implemented. In order to support as many conversions as possible, each Automation Anywhere command was analyzed and dissected to determine the best way to replicate that functionality with IBM RPA. Because the commands in IBM RPA are much more granular and deliberate, it is common for a single Automation Anywhere command to convert to two or more IBM RPA commands. For example, imagine a bot that needs to open a browser and navigate to a page and get the HTML data from that page for later processing. In Automation Anywhere, this is a single, broader command called “Extract Source”. In IBM RPA, this would be implemented with 3 distinct commands since the tool gives the RPA developer much more control over what the bot is doing. These commands would be 1. Start the browser, 2. Navigate to the URL, and 3. Get the HTML source.
Once the differences were identified, it was a matter of building a reusable conversion routine for each and every Automation Anywhere command that could be supported in the new IBM RPA platform. This time-consuming effort led to some interesting designs and a deeper understanding of the two platforms, and also paved the way for potential future innovations that Salient is planning to build for the IBM RPA tool.
Now that the conversion could be largely automated with this development effort by Salient, it needed an accessible and intuitive platform to deliver it to our customers and partners around the world. Thus, Botverter was born. This easy-to-use interface allows users to not only upload and convert their IBM Automation Anywhere bots, it also provides analysis and estimates to see how much of the bot can be automatically converted, and highlights the features and commands that do not have an equivalent command in IBM RPA or where information is missing, such as scripts and MetaBots.
Using a company email address, anyone can register for Botverter for free.
Figure 1: Register
2. Log In
Once you have confirmed your registration, you can log into the tool using your email address and password.
Figure 2: Log In
In the Automation Anywhere development tool Bot Creator, you have the option to export your bot as a .xml file. This is the file that needs to be uploaded to Botverter (rather than the encrypted .atmx file). Once you have exported this file, you can drag it to the drop zone in Botverter or click the drop zone and select the file(s) you want to upload.
Figure 3: Upload Your Current Bot(s)
Immediately following the upload process, you will get a set of charts and reports that give many metrics such as: how many commands and variables are in the current bot, how many commands this would become in IBM RPA, how many incomplete or unsupported commands there are, and the estimated time savings this would be compared to re-writing the bot in IBM RPA. The time savings calculation is based on a sophisticated algorithm that not only accounts for the number of commands, but also the complexity of the command, the context and options included in the command, and other factors.
Figure 4: Analyze the Conversion
5. Add Missing Options and Review Unsupported Commands
When the bot is exported from Automation Anywhere to the .xml format, it is likely that this export does not include all of the information necessary to automatically convert it to the new IBM RPA bot. There are many reasons for this such as reliance on an environment variable, a script or MetaBot, or that it is simply not included in the export. This last reason is an issue even if moving from one Automation Anywhere environment to another using these exports.
To address this, Botverter provides a wizard and visual cues to add these missing options and values and to, where possible, provide default values or drop-downs to allow users to select from a list.
In some cases, there are commands that have no equivalent in IBM RPA. This is rare, but Botverter also provides a way to view all unsupported commands that will need to be added manually once the conversion is completed. Even when commands are not supported, Botverter will insert clear comments so that an IBM RPA developer can easily find where these missing features are in the new bot and add them seamlessly.
Figure 5: Add Missing Options
6. Convert the Bot
Everything that has been done so far is offered at no cost to all users of Botverter. In order to actually convert the bot to the new IBM RPA format, an organization will need to contact Salient or IBM to gain access. It is often possible for Salient to provide this service at no cost as well, but it will depend on the circumstances and if Salient is assisting with the migration or providing the new IBM RPA platform. Either way, our main goal is to make the cost of conversion, plus the cost of the IBM RPA ,to be equal to or less than the cost of staying on IBM Automation Anywhere.
The conversion is completed with a single click of a button and the new bot is displayed side-by-side with the current Automation Anywhere bot. This provides a visual comparison between the two bots, and the new commands can be clearly reviewed for reference. The bot can then be downloaded in the IBM RPA format (a .wal file).
Figure 6: Convert the Bot
7. Manually Complete the Migration
There are many times when the automated conversion is 100% complete in Botverter so that the new downloaded bot can be imported and run in IBM RPA with zero changes or additions. However, there are also times where the bot includes unsupported commands or references to scripts and MetaBots that need to be added to the new bot. These manual activities are clearly outlined in Botverter prior to conversion, and placeholders are added as comments so that it is very clear to the developer where these additions need to be made.
Figure 7: Complete the Migration
Botverter provides a rapid on-ramp to IBM RPA adoption even if you are already heavily invested in IBM Automation Anywhere. This allows organizations to compare the features and benefits of IBM RPA without worrying about the cost of moving to the new platform. Our clients are seeing dramatic benefits from using the automated conversion.
If you are interested in learning more, or even trying it out for free, please visit one of the links below for more details: