Why you should consider process mining with low-code ipaas?
Antti Toivanen
Business Automation and Integration | Product Management | Frends iPaaS Fellow | Integration Factory Builder
"Can you explain to me why are you late in your process automation and integration with our [ERP] and [CRM]?", asked Jack, the business unit owner of one of our clients. I was again sitting in my bunker office at home due to the COVID-19 situation. This was actually some time after our earlier discussion with Jack about using RPA in automation. More about that case in my previous integration war story: hold my beer, let's do RPA. The problem with the customer was quite common: we were instructed to integrate their major systems and we got some requirements and process-flows and data-flow charts dug out from their IT department. As in ERP projects, there was strong pressure from the top management to get things done in the schedule. Our problem was that the processes and integration flow depicted in existing documentation did not correspond with reality much. We were forced to iterate via trial and error to find out how the process truly went on top of their line-of-business systems.
I explained the problem to Jack and the discussion went on. This time I'll save you from the details of the discussion and jump to the end result. Here is the idea in the format of why, what and how.
Why mine your processes?
Think about the manufacturing process, logistic process, supply chain process or any process that plays a major part in your business. The image in people's head of how a business process goes and the actual "how it really goes" tend to differ. Humans tend to see either the big picture of how their business process goes without the details or details of some part of it without the big picture. When automating the processes both parts - the big picture and the details must be both present. Either we automate just a small piece of the full process if we see the detailed part of a process, or we start to automate a process and end with iterating the details. The endless loop of iterations is the largest cost of integration automation development.
What is process mining?
Process mining technology is a rising trend in the field of process automation. It discovers the actual process by applying algorithms to your data and visualizes the real flow of tasks in a visual manner. The analytics based on process mining easily reveals how complex or human dependent your process is. It also uncovers steps that you were now aware of and the slow points or hard parts that should be improved. For example, removing human dependency makes your process faster and more resilient. Just think about the COVID-19 impact on processes that require human interventions.
How to execute the process that was mined?
Modern low-code integration platforms, like Frends iPaas, offer the ability to automate processes by orchestrating each individual task of the process. Frends enables decision making, loops, business rules and even concurrent processing within the process. The fancy thing is that you can develop an API with the same language that triggers the process. The API response is sent when Frends got the triggering data and persisted it. After that the more long-running part of the process is executed.
So you don't need to use separate products in API management or process execution - it's all low-code whether it is the logic of an API call in milliseconds or a long-running execution of a business process. One of the most important features is that you can monitor each execution instance of a process or API call.
The image above shows how the mined process was executed. The last task failed and Frends offers full information on the failed step: where it occurred and what happened and most importantly - with what data.
The video below shows how simple it is to create flows with Frends using BPMN2.0 notation.
Remember, your processes change from time to time. Constant mining is a feature in modern process mining products. The Low-code approach of an iPaaS enables companies to rapidly answer to changing needs.
How to automate human actions inside a process?
What if the process still needs approval or rejection decision made by a human. What if the process in some cases requires human input? What if the process needs to ask a human what to do in an error case? The decision may be automated with machine-learning, but not everything can be trusted to AI to make. At least not yet.
By combining basic tools the users use to communicate, like Microsoft Teams or Slack, we can easily enable human interventions that do not require those people to be at the office. They can easily do their work even when they are not able to be physically present at the office.
Conclusion
So what I would suggest that companies should really study how their processes are really executed instead of making assumptions or seeing only the high-level without details. One method to achieve this is process mining. What we at HiQ would love is to get a mined instance of a process and then just fill in the details of each system interface, make the data transformations and other task related to integration based automation. No more iterations that cost money and frustrate the developers.
I wonder if this mined low-code process automation approach shall make more error-prone and unscalable recording based RPA futile?
Business Automation and Integration | Product Management | Frends iPaaS Fellow | Integration Factory Builder
3 年I also think that this is an interesting question: will the "process mined low-code process automation" approach make more error-prone and unscalable recording based RPA futile?
Jack of all trades, master of none | The CEO of one's own life ( and KatvaSoft ) | EIAO | APAO | Passionate SAO
3 年At the beginning of the Millenium, there were many BPMN platforms but most BPMN projects failed. I think why they failed is that those platforms expected to be the center of the universe. Now Microservices and SOA v.2.0 swear in the name of the Microservices composition and event-driven architecture. This approach might work better but we should still think about the architecture and how business processes are implemented. Composing Microservices is a valid solution and tools like Frends can help with that and it these tools help to visualize the workflows and processes and that helps to make changes easier and faster. Workflows and processes can be done in composed Microservices also but either way, you need to define the processes and workflows. And in event-driven architecture, this orchestration becomes more important. I have experienced the pain of trying to define what is really happening in the system when services just publish events. Without orchestration, it might be really painful to figure what is going on. But if you have a "process instance" that is listening to events and based on those events decides what to do, then the whole picture is much more manageable.