This article is the second part of a two part review of key robotic process automation (RPA) features. While the first review focused on RPA products at a system level, this second part presents the top 10 product features at the robotic desktop level – where the rubber meets the road.
As with part one, we begin with the elephant in the room – the UiPath blog being the source of robotic software analysis and review. This won’t be a UiPath puff piece or open season on competitors. Any reader who perceives the opposite – certainly anyone with other viewpoints or opinions - is encouraged to express themselves via comments, with the same courtesy on puff and open season content requested.
For the purpose of this review a distinction is made between robotic automation (RA) tools and robotic desktop automation (RDA). RA tools are defined as non-integrated, stand-alone software for laptops and workstations. RDA is distinguished from tools by integration: between individual software robots; with work queues and outputs; with system functionality such as deployment; security; scheduling; monitoring; reporting; analytics, etc.
Top 10 Robotic Desktop Automation Features
The scope of this review is high-value RDA features that will help customers evaluate products and solutions of various providers and determine the best choice for them. This review doesn’t cover “table stakes” features that are common to most RDA products. Examples of table stakes features include: graphical process modeling; reusable libraries; mouse, keyboard & image automation; scheduling; training resources.
Perhaps the most important feature of any software is subjective - ease of use. Features and capabilities mean nothing if users aren’t comfortable with the technology and are reluctant to become engaged. Customers should make full use of product demos – all leading RDA providers offer them - as part of their evaluation. One recommendation for measuring ease of use is to pose this question: are evaluation “users” who, in their personal lives are comfortable and competent with the UI of iPhone 6, able to fully engage the product?
Workflow Process Modeling
- Workflow Drag & Drop: At a minimum, a user should be able to create visual process steps by dragging and dropping related activities onto a graphical workspace. Then, the user should be able to turn those process steps into a visual workflow by creating connection properties between them. Alternatively, a user should be able to create an application or web-based workflow by clicking the “record” button on a workspace recorder wizard. Nothing in these user actions should require programming knowledge or more than casual IT knowledge.
- Sequential and Parallel Workflows: The workflow design tool should support both sequential and parallel branching flow controls. Flow controls and branching capabilities are created with “If”, “Dowhile”, “ForEach”, “While” & “Switch” arguments and make both sequential and parallel workflows possible. Parallel workflows are essential because uses such as concurrent data extraction and/or screen-scraping activities produce lightning fast performance.
- Workflow Triggered by System Events: The RDA product should support proactive automation scripts – ones that don’t rely on any user action. Instead, they can intercept and respond to mouse and keyboard events. This means automation is triggered by the system itself. An example would be an automation script designed to intercept a “Submit” button click in a CRM application as it creates a new customer. The script then runs a workflow that verifies the new customer’s information on a third-party website.
- Full SAP, Citrix & Java Capabilities: A RDA provider should demonstrate the technical prowess to provide an elegant solution to SAP & Citrix (including Citrix Xen) GUI automation challenges. Specifically, a solution for the elements on the SAP and the Citrix GUI that present themselves as being of one block - making it impossible to use a simple recording or automation tool with either of them. The provider should also have an elegant solution to java automation, beyond the basic “java bridge” approach.
- Mobile Device Capabilities: A RDA provider should also provide a mobile device solution that goes beyond graphical desktop sharing (VNC). The issues with that solution are threefold: the desktop applications do not fit well on a small mobile screen; desktop applications are designed for mouse & keyboard – not touch; uncontrolled access to data outside the network is a security risk. Solutions should be offered that limit these risks while allowing mobile app web service access
- Logical Control Level Capabilities: The RDA product should base UI layer automation on the logical control level rather than relying on the position of screen elements. Automation that relies on screen position for clicks and typing fails to match the advantages of the logical control level approach: automation is independent of screen size & resolution – and therefore much more reliable an accurate; there is no impact when the automated application changes its layout. UI logical control level automation just makes sense – what business user ever clicked on a numerical coordinate instead of a button?
- Workflow Automation beyond the UI Layer: The UI layer has many automation advantages: it’s simple to design and implement; actions are uncomplicated user application steps and it sidesteps data integrity issues by not affecting application storage objects. However, a well-designed RDA product will automate workflows on several other levels, specifically: application layer; storage layer; OS layer and Network layer. Workflow automation on these layers requires equally specific technologies but provides advantages of efficiency, reliability, performance and responsiveness.
Workflow Modeling Productivity Tools
- Wizards: Wizards are a user-friendly approach to generating and inserting more complicated and/or advanced activities into a workflow. A RDA product should have wizards for common (but potentially complicated) activities all users are likely to encounter. Such activities include: recording user actions; connecting and exchanging data with web services; text extraction from applications (particularly if OCR is required); data extraction from web pages and connecting to a REST or SOAP web service.
- Pre-defined Activity Sets: One of the most effective ways to boost user productivity is to do much of their work for them. For RDA products, this means supplying a large set of predefined activities covering the full spectrum of software automation and app integration design work. These predefined activities should cover the majority of design work scope, such as: automation activities, data extraction and data entry.
- Workflow Templates & Reuse: A well designed RDA product will make it easy for the user to save workflows as templates, allowing the original workflow to be preserved as modifications are made to the copy in production. More importantly, templates can be copied and used to create small pieces of common automation. Often times, a successful strategy for creating complex automation scripts is to combine small workflow pieces (sometimes referred to as “snippets”) together and make a large part of the more complicated script.