Can I dynamically change a business rule for an instance?

Hi folks,

In the context of a personal survey for BPM tools, I would like to ask if Camunda supports by some way (either in Community or Enterprise edition) the possibility of changing a business rule for a process instance. Without the need for deploying again the same process definition.

Thank you in advance,
Steve

Hi Steve,

There are a number of different scenarios which could meet your requirementā€¦

Deploy DMN
Your process model could use a business rule task bound to a DMN model. You could change the DMN model by deploying just the DMN model.

DMN version
Your process model could dynamically bind to a process model or version based on some logic implemented in the process model.

Regards

Rob

1 Like

Hi @Webcyberrob and thanks for your feedback.

To surely understand, in the first case above, you mean that I have my process model in BPMN 2.0 and with every dynamic change in the DMN model, the ā€œconnectedā€ Business Rule Task is automatically updated ?
This case is supported in both of Camundaā€™s editions ?

Let me tell you that I didnā€™t understand what you mean in the 2nd case, I got confused :confused:

Please suppose that my process model is designed in BPMN 2.0.

Regards,
Steve

Hi Steve,

Ok for use case 1 lets assume you encapsulate your business rules in a DMN model and you use a business rule task in your BPMN process model. In the process modeler, you can bind the DMN model to the rule task using say ā€˜latestā€™. Hence if you redeploy the DMN model, subsequent invocations of the rule task will use the updated DMN model. Note that this applies to all subsequent invocations, not just a specific instanceā€¦

If you want much finer grained control, you could set the business rule task binding to use a version tag. Then in your process instance, you could use a process variable to resolve to a specific version tag. So again, you may need to deploy multiple versions of the DMN model, however you can now dynamically resolve which version to use at process instance runtimeā€¦

regards

Rob

2 Likes

Hi,

A follow on question on this topic .

Is there any way to update the values in the DMN table at run time in production by business users without the need to redeploy the DMN application .

Can we use cockpit or is there a rest api that can be invoked to update this at run time so that the business have control on any change to the values in the DMN table . Here I am not talking about creating any new rule, just an easy way to manage/update the existing rule table in production

Thanks
S