Understanding the process automation landscape – InfoWorld

Posted: May 14, 2021 at 6:16 am

In 2015, Deutsche Telekom started to apply robotic process automation (RPA), one of many tools in the whole process automation space. Over time the company developed an army of more than 2,500 RPA bots in a huge success story. But they also had to learn that even if RPA has process automation in its name, it does not really automate processes, but tasks.

This is a common misunderstanding that is rooted in the complexity of the process automation landscape, where tool categories are multidimensional and difficult to capture. In this article I will answer the question I get asked almost every day (what is process automation?) and provide an overview of the process automation space.

For the sake of brevity, I will narrow the scope of process automation to the following:

Other process automation use cases are explicitly out of scope:

Now, there are two very different types of digital or integration processes:

There is some gray area in between these two categories when you customize your standard software. But companies have become more and more cautious about doing this because of bad experiences in the past.

The decision needs to be made separately for every process you have in the company. And please note: There is no right or wrong decision, except that your choice should reflect your business strategy. This article will focus on tailor-made processes.

Tailor-made processes involve building software for process automation. This is software to build software and can be roughly categorized in terms of two dimensions (the nature of the tools, and the nature of the automation), as illustrated in the figure below:

With these two dimensions, you can sort tools into the four major buckets described in the next sections.

Typical examples of low-code task automation include application integration tools and RPA:

Low-code task automation tools are great for solving simple integration problems in isolation and help to remove manual integration work, such as copying data over from system A to system B. The immediate business value is the reason that RPA is such a huge success.

However, the automation scope must be simple enough. And note that resulting solutions are often untested, naive, and hard to maintain. Many solutions focus on the happy case and forget exceptional situations, which then hit unexpectedly in production, often going unnoticed. This can make the solutions brittle.

Automating single tasks in a developer-friendly way typically means leveraging not only software development but also the following:

In contrast to low-code solutions, developer-friendly solutions require software developers to be involved. On the other hand, these developers are generally very productive, as they can work in the stack known to them. Also, the resulting solution is typically more stable and can solve more complex problems.

Task automation tools do not implement business process flows. However, a series of RPA bots, integration tasks, or event subscriptions might form a logical chain that implements a business process. This comes with two challenges. First, the process flow does not have its own persistence, making it hard to determine the current state of any instance. Second, the control flow logic is nowhere visible, making these architectures hard to understand and maintain. (This is further described in my talk, Complex event flows in distributed systems.)

There are two categories of tools that focus on providing visibility into these chains of tasks:

Process automation tools automate the control flow of multi-step processes. Their focus is less on the single task and more on the interplay between tasks. Processes are typically long-running in nature, which leads to their own requirements for the tool (persistence, operations tooling, etc).

Low-code tools aim to allow non-developers to implement these processes. Typical tool categories include the following:

Some of these tools can really help to automate simple processes. If you are a startup, you might get along with a typical set of SaaS applications and then connect them using iPaaS solutions sufficiently. But these approaches fall short on complex business processes or integration scenarios.

What I have regularly found is that low-code products do not deliver on their promise and less tech-savvy citizen developers cannot implement core processes themselves. As a result, companies have to revert back to their IT departments and ask them to assign professional software developers to finish the job, which in turn are not productive with proprietary low-code stacks.

There are tools that allow software developers to productively work on process automation projects:

Read more:

Understanding the process automation landscape - InfoWorld

Related Posts