What is automation, what are BPM tools, and how do they work in practice?
10.02.2021 - Read in 8 min.
Read our interview based on episode of Drive with IT with Krystian, where he briefly explains the concept of business process automation. Find out about its advantages and in which solutions Camunda can be useful. BPMN diagrams, DMN tables, optimisation and expansion of process models? Enjoy!
What exactly is business process automation?
It’s a quite complex topic, but let’s start with what automation exactly is, as its perception may vary depending on the concept.
Small, medium and big companies all tend to focus on the performance of their employees. In companies with several to several dozen employees, prioritising tasks essentially means completing most important tasks, such as responding to e-mails, automatic responses, choosing leads, etc. These tasks aren’t especially important and don’t generate big revenues, but have to be completed anyway. Most of the time, these are recurring tasks and tasks completed on a daily basis, which in such a model are vulnerable to the risk of human errors.
It’s easy to miss something if the task is monotonous and repetitive
Usually nobody is interested in taking up these tasks or they require specialised knowledge from a certain industry. They are also exposed to additional risks: employee rotation, onboarding new employees, and the risk of “losing the knowledge” that sometimes isn’t documented. In automation, we try to identify tasks within the business process of the company that can be done by a system. We’re talking about automating basic tasks, like sending e-mails, to a broad integration with enterprise systems, solutions for accounting, machine operation, and reporting. All of these tasks have to be completed daily in virtually any company, and on a bigger scale too. Most of the time, smaller companies need to prioritise tasks and leave the basic ones for machines. In bigger companies and corporations that employ thousands of people, even core systems can be automated.
So, in general, can we say that we use automation to make completing tasks simpler, easier, free of human errors, and to be able to focus on more important things?
Yes, and also to free up people from mundane daily work. Some statistics, e.g. concerning sales employees, indicate that in this industry, around 38% of the time is devoted to tasks other than selling, such as reporting or submitting leads, and those side duties aren’t particularly interesting. Automation allows us to “slice” off a piece of this cake and put it somewhere else.
If you could choose some of the biggest advantages of automation, what would they be?
There is no such a thing as the biggest advantage, as it always depends on the actual case that we analyse. For one company, the most important thing is to eliminate errors in task completion, while another company may focus on generating reports and monitoring the right metrics. In automation, this topic of what can be achieved and what is valuable is quite broad. Each person implementing process automation in a company will say that for them something else matters the most.
Download free ebook and learn more
Business Process Automation using BPM. Best Practices.
Does that mean that automation provides many solutions, if there are so many cases?
There are a lot of solutions – those dedicated to use cases where they are e.g. integrated with mailchimps, or other services used e.g. to communicate with the client. There are also solutions that were developed strictly for orchestrating e.g. cloud-based microservices. There’s a plethora of solutions to choose from, but in fact, everything is based on the development of business processes, common notation of these flows, and the documentation of the processes, so that the knowledge is not gone e.g. with an employee. This means that everything is documented, systems can operate based on a defined pattern. Repeatability of the process is achieved, and we always know how a given process will be executed – there is no place for any deviations. This assures people who work in business that everything they have actually works as intended, in a way that the business wants to accomplish these processes, and the way it was modelled. There are multiple solutions: IBM solutions, Open Texta, AWS Step functions (here automation works in a slightly different way), and Camunda, which is my area of specialisation. Camunda is used for handling business processes – both for microservices and people orchestration. Read more about microservices:
What exactly is orchestration?
It tells us how interactions between different units are formed. In case of orchestration and microservices, it’s about how microservices have to work together in sync and complete subsequent tasks while waiting for a different microservice to finish. By creating a unified structure of this business process model, we can stay in control and have a general overview of what’s happening with our process. Same thing applies to manual operations – this is referred to as task orchestration, which is the most common case in companies during recruitment or document processing, when one has to e.g. wait for somebody else’s acceptance and approval, and the process involves several people. Generally speaking, in such situations reaching for BMP systems is a good idea.
Recently, BMPN has become a hot topic, but what is it exactly?
It’s a notation for mapping business processes. It works more or less like this – this notation (the way of recording the performance, e.g. as blocks, squares) provides predefined elements. The way that the system and people operating it work is based on this image. These diagrams, frequently saved in the xml format, can be quickly uploaded to systems, and if the system is equipped with an engine to process them, it can execute the process in accordance with them. The image is understandable for everyone, not only technicians. It presents a simplified transcription of elements. There are many of them, but the presentation of the pattern is intuitive, even for people unfamiliar with BPMN. Not only does it provide value by documenting the process, but it also enables us to deliver the pattern to a business processes execution engine such as Camunda. The system will behave in accordance with what was previously sketched. This solution may seem uninteresting and unprofitable, but in fact a unified form of process presentation and system behaviour, as well as a common communication platform for the business and the IT is the profit here. There are two perspectives. For example, for the IT developing a recruitment system is quite difficult, but it’s quite easy for the business – there is a vacancy, a job offer is published, recruitment process is conducted, and that’s it. However, from the system’s perspective there are way more requirements – CVs have to be collected, saved and stored, candidates need to be contacted, consents have to be checked, candidates and recruiters have to be invited for an interview, and so on. Explaining those problems to the business becomes more and more complicated as we dive deeper and deeper into it. Whereas for the business it’s initially simple – it’s a recruitment system.
How are the diagrams translated into an operating software?
With the use of engines that can be implemented into your application or used separately, such as Camunda that can work as an engine embedded in our app. In fact, by adding only two lines of code in Java we can have an operating engine that reads models in the BPMN notation and provides functionalities such as: process execution, orchestration of services and people, execution of decision tables in the DMN notation.
Tell us more about DMNs, reports and BPMN models.
These are decision tables that use FEEL language (even the name “Friendly Enough Expression Language” itself indicates its character), which is understandable for both the business and the IT and is based on fulfilling conditions. It makes the decisions-making process easier. For example, when the business comes and wants to implement a change in the process, it’s a great way to show them potential problems, the amount of work needed, and what technical solutions can be used. This makes DMNs a great persuasion tool for the IT to use. It’s easier to show what the possible consequences of moving one block within the process may be. Without BPMN engines, in order for the overall system and reporting the load of individual services or departments to work, we would have to task developers with writing a parser that will create a report on what happened within the process or export it to a csv or Excel file. Unfortunately, all the elements have to be redefined from the scratch. In such cases, Camunda is a ready-to-use solution.
Why choose Camunda?
To be honest, to me Camunda engine has the most pleasing GUI to work with. It forked off of the Activity solution. They added many elements to it, implemented additional components to the engine, or in fact the whole tool stack that Camunda is: Cockpit, Optimize, Cawemo. There are many elements essential for business processes, and previously such solutions had rather unpleasant GUIs to work with, and some of them weren’t available at all. This is one of the advantages over competition that Camunda has.
Is Camunda meant only for big companies, or for smaller ones too?
In fact, this solution is suitable for everyone, and the community version is free to use – every company can base their own business processes on it. The only question is, what do we actually expect from our system? Answering it will allow us to decide if this solution is good for us.
If we have come up with a process, can we optimise it? And are there any appropriate tools to do it? To check what works, and what can be improved?
Yes, Camunda stack includes such a tool – it’s called Optimize, and it’s a very powerful tool for business users. It can be used to create reports and check what’s happening in real time, without giving business users a direct access to the system to prevent any changes in the process without our knowledge. We can see how the processes are working, check the performance levels of users and other systems that we communicate with (e.g. OCR), to make business decisions on the spot – where we would like to allocate more people, new software, or system resources. We can monitor what is happening in the system, set alerts, and respond properly. This tool is not only for responding, but within Camuda itself we can have a separate business process that deals with emergency situations.
With such a big system, are there problems with performance?
If we use Camunda to orchestrate systems and people, and there are user tasks involved, in the worst case scenario we achieve performance at the millisecond level, so the differences don’t really matter from the user perspective. But if we use Camunda in the other way, i.e. to orchestrate microservices, we can run into problems such as bottlenecks in databases or performance problems during excessive load, caused either by volumes of data or request delays. Some of these problems can be solved easily, as Camunda is scalable and can be placed in the cloud, which means we can create as many instances as we want. That’s why a second solution was created – Zeebe by Camunda. It’s Camunda designed exclusively for orchestrating microservices, where time has strategical meaning and we want to have the best performance possible. This technology is also based on using the BPMN for modelling interactions between microservices, external services or data buses.
Visit our YouTube channel to see the full episode with Krystian. If you want to learn more about BPMN, read our blog post: