In our May Developer Meetup, we covered two highly valuable tools that should be incorporated into every automation development lifecycle: the Code Analysis and Debug tools. The interest and feedback from our live audience were undeniable, such that I felt compelled to create a permanent resource for those looking for information on these incredibly helpful tools.
THE WHY BEHIND THE TOOLS
With an experienced automation team, why take the time to analyze and debug code?
Paramount to building resilient, efficient automations is optimized code, free of errors that adheres to well-established and enforced best practices—think variable naming conventions, mandatory header comments, file paths, action maximums, etc. Every developer on your team, regardless of experience level, should be aligned on these practices to ensure a smooth development process and relieve maintenance burden down the line. Automation Anywhere’s Code Analysis and Debugging tools offer features for Automation Leads and Citizen/Pro Developers to easily enforce development policies, identify vulnerabilities, improve readability, and reduce your overall production time and cost of automations.
Let’s take a closer look at the features and benefits of each.
CODE ANALYSIS TOOL
Automation Leads and Developers commonly face low code quality and failure to adhere to best practices. This isn’t necessarily a symptom of inexperience but rather a lack of oversight and a tendency to focus on individual work without coming together as a team. Regular code analysis can help you avoid these pitfalls of automation development and benefit your program in the following ways:
- Control the structure of your automation code, reducing code complexities;
- Improve code readability and quality;
- Make your automations easier to document;
- Simplify automation maintenance;
- And reduce your production time and the cost of automation
As an Automation or CoE Lead, you can leverage the Code Analysis tool to establish and enforce code rules and best practices for your citizen and pro developers. Some of the rules you can set up include variable naming and usage, hard-coded values, error handling, and more. We’re currently working to add even more complex and custom rules that customers have been asking for, so keep an eye out for those enhancements to Code Analysis in forthcoming releases. Then, you can assign code analysis enforcement for bot check-in to the roles you manage.
The typical code analysis workflow for an Automation/CoE Lead in the Code Analysis tool looks like this:
- Define your set of best practice goals
- Create and update code analysis policies
- Enter policy names and descriptions
- Select and enable rules for best practices
- Assign best practice goals to automation projects
- Assign code analysis policy to folders
- Select folders and assign policy to selected folders
On the other hand, as a Developer, the Code Analysis tool is your trusted checkpoint as you write code to ensure you are following the policies set forth. This will not only fortify your code but also streamline your efforts. It can even analyze and generate reports on already existing automations. Here’s how it works for developers:
- While in Bot Editor, Bot Assistant flags violations, indicating their nature and severity level, allowing you to quickly fix and clear each one as you work.
- On the Automation page, you can locate existing automation files with violations and access reports for details.
DEBUG TOOL
Debugging is the process of identifying, analyzing, and removing software bugs. For automators, that means identifying and eliminating errors in task automations, which can range from a simple syntax correction to complex logic corrections and performance optimization. The benefits of debugging your automations before putting them into production include:
- Proactive error correction
- Reinforced security against potential hackers
- Optimized performance and reliability
- Easier maintainability
- Improved user experience by preventing unexpected crashes
The “old school” way to debug a task automation is to run the automation and continually check and track the source of the error. In order to find an error, you must run the automation repetitively and place break points. However, with the help of Automation Anywhere’s Debug tool, we’ve made it far simpler to build efficient bots and quickly pinpoint areas where there is code leakage or gaps in logic. The debug options can be used in the same A360 assistant window alongside Code Analysis—two birds, one stone!
So, how exactly does the Debug tool work? It enables developers to place break points on specific lines of code for the tool to test and flag where action is needed. Developers can either debug step by step from the break points or skip to let it run through all break points.
We’re also excited to announce enhancements to the Debug tool in the .33 release. These enhancements will include call-to-child automation, step-in and step-out actions, and a call stack view—all of which have been requested by our customers and will further simplify and improve the debugging experience.
LEARN MORE
As always, our Docs portal is fully updated with in-depth information and guides to using the Code Analysis and Debug tools, complete with easy-to-follow illustrations.