An automation tester’s curious journey to understand Robotic Process Automation
A call from an old colleague starts a reflection
One thing we are proud of at Itecor is the link we keep with people who have worked with us over the years. So, it was with great pleasure that I recently received an e-mail from an ex-colleague, now working for a technology company. He remembered his days in our QA & Testing team and wanted to know if we would possibly be able to help him with some activities which he needed automating in their licensing department. On the phone with him, it wasn’t long before I realised that he wasn’t really looking for Test Automation, but rather Robotic Process Automation. In trying to explain the difference to him, it led me to a reflection of what these technologies have in common, but also what makes them unique.
As a consultant with a background in quality I have a long experience of working with Test Automation. I’ve watched the product set grow over the past decades – but not only the technology: the expectations, scope, skills and methods associated with test automation have all evolved. For many in application development, it has become part of the normal ways of working. The increase in digital programs and the need for rapid results on Agile teams has increased the demand. More skills and knowledge on the marketplace together with a varied toolset have fuelled the supply of test automation competencies. Some excellent and mature Opensource tools have lowered the barrier for many who are not scared by development, while investment in AI/ML and no-script/low-code technologies by the big commercial vendors have softened the adoption and maintenance costs associated with Test Automation.
Automation is a leading trend these days, and it’s more than simply Test Automation: Yesterday I watched a robot grass cutter busying itself across the enormous lawn in front of my client’s Headquarters; my current manufacturing project involves integration with hundreds of PLCs[1] that have been part of factory automation for decades (long before IIOT appeared); a click of a button deploys a new build across hundreds of servers. Automation is everywhere we look. Gartner calls out HyperAutomation as a Technology Trend and predicts that by 2024, organizations will lower operational costs by 30% by combining hyperautomation technologies with redesigned operational processes [2]. The Economist Intelligence Unit wrote that it is “a technology initiative of strategic importance to the organisation”
“usage is accelerating ..to create opportunities for business growth, and to encourage greater creativity and innovation from employees. ..artificial intelligence (AI) gives rise to intelligent automation technologies…It is coming to be seen as a technology initiative of strategic importance to the organisation„
The Economist Intelligence Unit – The advance of Automation – 2019
What is Robotic Process Automation
Robotic Process Automation (RPA) is part of a global Automation trend which is seeing an annual growth rate of over 40%¹. That’s a number to make anyone sit up and take notice.
RPA automates repetitive, well-defined tasks which are normally performed by business people. The general idea is to save time, increase capacity and improve accuracy – although additional benefits often come simply from liberating skilled employees from mundane activities. In the case of my client, he wasn’t looking to reduce headcount, but rather increase the capacity of his license management team.
The pandemic provided many opportunities for RPA. Takeda Pharmaceuticals [3] began recruiting patients for a clinical trial of a Covid-19 treatment involving antibodies drawn from the blood of recovered patients. Normally it would have taken weeks to process the applicants, but with the coronavirus still spreading, Takeda was able to speed things up using their RPA solution to automate. The result: the paperwork was done in days instead of weeks.
One airline company found they were able to use bots to deal with a huge spike in refund requests by automating data entry that would normally have been done manually.
Despite all the hype around Artificial Intelligence and Machine Learning, many efficiency gains come from automating pretty ordinary tasks. Today, the average large enterprise uses more than 170 different applications [4] and a single process might touch several of them. It’s not always easy to join these applications together. The good news is that the RPA tools don’t really care if you have old legacy systems, patchy integration and spreadsheets to drive a process. They excel at reading and interacting with the screen like a human would and are able to go from mail to mainframe to web and PDF.
While many different industries can benefit from RPA, banking and finance companies have been big investors – not surprising given the nature of their business which has a lot of bulk processing and high audit and control requirements. Insurance, Healthcare, Logistics and Utilities are all investing as well. In fact, any industry with repetitive front or back-office tasks can benefit from streamlining their business.
What makes RPA software unique
At first sight there is a lot in common with Test Automation and Robotic process Automation. Both involve automation on business applications, usually by “scraping” the screen to identify a button to click, a word to look for, or an image in the right place. At its simplest, this creates bots which can be triggered to run and perform an automated set of steps on screen.
Instead of the IT department, RPA software targets the business technologist and citizen developer and as such is designed to be easy to use low-code technology. The simplest bots are created using a drag-and-drop interface, but there is generally a more sophisticated back-end available for handling more complex logic.
They are particularly strong in OCR and ICR[5] (handwriting recognition technology) which allows them to “read” mainframe screens, PDFs and other documents. They can understand and act on business triggers such as – an email arrives in an inbox with the word invoice in the subject line – or – an excel file is added to a folder.
As well as running background activities, the bots can be designed as on-screen helpers. Imagine a call-center employee on the phone. They open a form to enter the data of the person they are talking with and as they start entering their ID – the bot sees this and goes and gets the info if it exists already and completes the data on the form.
Because the bots are designed to run business transactions, there needs to be strong audit capabilities to track and account for who did what and when.
Exploiting the potential of RPA is an art in itself. While some companies start off with a very clear business case, extending the value throughout the organisation can present challenges. Business Process Discovery allows an organisation to listen in to which transactions and activities are actually being done by their employees, and how. This can help them with the analysis of the next candidates for automation.
Some RPA vendors have marketplaces where add-ons developed by one company can be made available to others. In a community-driven approach, users can also vote on ideas and features they like.
We can expect future developments with AI/ML. One challenge for maintenance is keeping all the rules up to date. Could a machine-learning algorithm be trained to make decisions? For example, an algorithm might detect unusual payment card behavior based on screening other transactions and that card’s usual locations and transaction amounts.
What can I bring with my Test Automation experience?
As a test automation girl, I know conceptually that a lot of the base automation technology is shared between Test Automation and Robotic Process Automation (Indeed, some of the vendors do overlap in this space). After a bit of a deep dive into the world of RPA technology I can see the need for specific RPA features.
In spite of these differences, I find myself asking the same questions I ask for Test Automation – how will this bot be maintained? How will it handle unexpected circumstances? What about time-outs? What if the data changes? What about language change? From the Test Automation world, I know that tool governance is extremely important: Who manages the tools and the licenses? What about training? Evangelism? Who can use the tool and for what? What is the value it is bringing to my company?
In reviewing RPA technology I find much that is familiar and that I can relate to. As I dig into the specific challenges that RPA is trying to solve it becomes clearer to me not only what differentiates the tool set from Test Automation, but I realise what an experienced test automation professional could bring: we are familiar with picking up unfamiliar business processes and being able to design an automated process; we appreciate the subtleties of screen automation; not least, we have a track record in tool governance within the enterprise, something that is often underestimated but critical to exploit the full value of a technology for your business.
[1] PLC: Programmable Logic Controller – rugged devices used to monitor and automate the manufacturing process
[2] https://www.advsyscon.com/blog/gartner-it-automation/
[3] https://www.youtube.com/watch?v=-oReLkHboCQ
[4] https://www.okta.com/businesses-at-work/2021/
[5] Optical Character recognition and Intelligent Character Recognition