A new BPMN engine in Collibra: Activiti to Flowable 

Business Process Management (BPM) is a critical aspect of modern enterprises, enabling organisations to model, automate, and optimise their business processes. In the BPMN (Business Process Model and Notation) world, two popular engines that facilitate this process coordination are the Activiti engine and the Flowable engine. With the introduction of the workflow designer in Collibra, the new Flowable engine is the new standard for workflows. If you find yourself considering a transition from Activiti to Flowable, this blog will guide you through the journey.  

Activiti Engine  

The Activiti BPMN engine has been a reliable choice for organisations seeking to implement BPM solutions. Activiti has provided a robust framework for modelling and executing business processes, offering features like task management, workflow automation, and scalability.  

Flowable Engine 

Flowable, another powerful open-source BPMN engine, has gained prominence for its flexibility and extensibility. Built on the foundations of Activiti, Flowable inherits its strengths while introducing improvements and new capabilities. Transitioning to Flowable means embracing the evolution of BPMN technology.  

Collibra 

With the introduction of the Flowable engine and workflow designer, a new approach has been implemented for workflows within Collibra. Since the launch of Collibra Data Intelligence Cloud (CDIC), further support (e.g., updates) for Activiti is no longer provided by Collibra. While existing workflows continue to function with the old functionality, updates and active support are now based on Flowable. This calls for a guide to transition your workflows from Activiti to Flowable.  

The upgrade to Flowable ensures that out-of-the-box (OOTB) workflows for Collibra remain functional. However, it’s crucial to test your customised workflows extensively, even if they seem to work as expected. Workflows, especially after upgrading from version 4.6.X, might exhibit unexpected behaviour. To ensure your migration from Activiti to Flowable runs flawlessly, follow the step-by-step guide below. 

Step-by-Step Guide for a Flawless Migration 

Step 1: Identify Workflows 

Check which workflows need to be transitioned from Activiti to Flowable. For illustrative purposes, the OOTB workflow of ‘Issue Management’ is used. Specifically, the script task “Mark as accepted” is used. 

Step 2: Workflow Designer

Import or build your workflow in the Collibra Workflow designer. See the blog about how to upload your existing workflows in the workflow designer. There are no requirements when building your workflow in the designer. The engine already makes use of Flowable.

 

Step 3: Script Task Analysis

Check the script tasks in the old Activiti instance on your Collibra Data Intelligence Cloud (DIC) platform. Navigate to Settings > Workflows > Definitions > Select the old Activiti workflow. In the sidebar, select Flow. Scroll down in the XML code and note each code in the script tasks.

xml code for building workflow

Step 4: Compare Script Tasks

Compare the old and the new workflow’s script tasks and note the changes. The changes in the images below have been highlighted in red.

Activiti

Flowable

Building a workflow in Flowable

Step 5: Testing

Create a backup of your Data Intelligence Cloud on your console at console-[yourdomainname].collibra.com. Next, deploy the new workflow and thoroughly test it, ensuring it exhibits no unexpected behaviour.

Step 6: Migration and Adjustments

Migrate to the new workflow and make necessary adjustments. Common adjustments that must be made are about process variables which could be missing on previous process instances but are required in the new process definition. To prevent exceptions like Unknown property used in expression: ${customerEmail} you must set the new process variable explicitly during the migration. An overview of all breaking changes transitioning from the Activiti engine to the Flowable engine can be found here.

That’s it! Your workflow is now successfully migrated.

For additional information, consult the Flowable Documentation or get in touch with us.