Expanding further on our previous article on Automation landscape, in this instalment, we will reflect upon the level of coding involved in Digital operations implementation projects, for some of the key automation technologies as introduced in the previous article. As many of these technology platforms now employ cloud computing as their primary delivery model to lower adoption costs, implementing a Low code product strategy has been a natural next step for these technology platforms in their evolution to simplify and speed up implementations.
RPA- The not so Low Code Automation Technology
Although RPA has been one of the fastest-growing software markets in the last two years according to Gartner, the hype that surrounds this technology causes a lot of confusion about what it can or can’t do. For instance, the very acronym RPA as “Robotic Process Automation” is one that many analysts and practitioners’ question as to whether the use of term “Robotics” and “Process” in the acronym fit in the context when fundamentally RPA bots are targeted scripts with little intelligence to move data between desktop applications through their graphical user interfaces. The main benefit of such static scripts, that are highly susceptible to user interface changes, is in the form of a productivity tool freeing up individual employees from simple, repetitive mundane “tasks”. Indeed, achieving end-to-end automation of complex business processes requires a broader tool kit.
Is RPA as low code technology? A Low code development platform “provides a development environment used to create application software through graphical user interfaces and configuration instead of traditional hand-coded computer programming”.
“Low-code development platforms reduce the amount of traditional hand-coding, enabling accelerated delivery of business applications. A common benefit is that a wider range of people can contribute to the application’s development—not only those with formal programming skills.”
Do RPA tools make development easier reducing the skill level and amount of hand-coding to be done? To develop stable and robust UI automation scripts in RPA tools, it requires one to learn and apply all the necessary programming techniques, as in the case of any standard general-purpose programming language, such as defining variables, scopes, dependencies, conditional statements and loops, exception handlers, logging, debugging and source code management activities, etc. From a UI automation perspective again, it requires one to gain sufficient understanding and experience in the use of different kinds of selectors as applicable to different UI technologies, updating and managing selectors with regular expressions or dynamic variables, etc. This is just a small subset of technical skills one needs to have to be a proficient RPA developer and certainly building UI automation scripts either with a flowchart style UI template or as a meta-language script, which are still low–level scripts, does not drastically reduce the skill level requirement or make the development effort that rapid.
Level of Coding for other major Automation Technologies
Looking at the fuller Automation technology landscape, in order to achieve intelligent digital operations with automation one needs to consider not just employee productivity gains with RPA, but other important focus areas as well such as customer experience, end to end process orchestration, integration of data across applications, and applying machine intelligence in all of these former areas. This is only achievable with a much broader set of technology platforms and frameworks to include iPaaS, iBPMS, Multi-experience Apps, and AI technologies (Machine Learning and Chatbots) for achieving cognitive skills such as vision, speech, language, decision making.
The below table summarises some of the key attributes of this broader automation landscape in terms of the core focus areas, benefits and keywords that uniquely identify these different technology areas. One significant reflection across the board when considering these technologies is the fact that platforms enabling the adoption of these technologies have all moved to cloud computing distribution models. This is no surprise given the recent advancement in this space as well as the benefits realized in terms of reducing the adoption cost, providing scalability and flexibility to enterprise customers in how they manage Digital operations. And this important trend has laid the foundation for the rise of Low code development.
As a reference point, the table below lists at least one noticeable major software vendor that offers a fully equipped cloud-based development platform in the respective automation technology areas. And lastly, the table provides an indicative score on the level of coding involved in the implementation projects for these individual technologies which are average scores based on data from roughly 5 professionals with expertise on these technologies. Certainly, with larger sample data size these scores can be re-affirmed or further adjusted. As insights, multi-experience app development is currently supposedly the most low code automation technology whereas RPA is the least low code automation technology.
The below model is a pictorial representation of the low code positioning of these key automation technologies being categorised under five focus areas mentioned above-
Contact us at SQA Consulting, to see how we may assist you in developing the necessary skills needed for implementing RPA projects.