Help: Architecture, Test and DMN deployment via Camunda Rest

Hi, how are you?

In my team we are implementing Camunda in a new project. We want to use BPM and DMNs.

The business has many processes and decisions.

We divide the project in two. One as an API to use DMN to make decisions and another for processes.

image

We see that the process calls the DMN API and with the result makes a decision.

Now we want to give end users the ability to only modify DMN files and deploy them.

So we thought about bringing the Camunda Modeler to the end user. Where you can modify the DMN files and test them.
They would then be deployed to the API Project DMN project. (Via Camunda REST)

(Sorry i can’t embbed more than 1 image.)

Business Actor → Uses Camunda Modeler to edit and test DMN File → Deploy DMN File vía Camunda Rest to Api Project DMN.

(Clarification: It is a simplified version. There would be a review stage before deployment.)

Now, the question is, what about the testing of the project?

For example, we have a decision table with two lines:

Age >= 18 => Adult

Age <18 => Minor

And in the API DMN Project we have the JUnit tests of this DMN.

Age = 12 => Minor

Age = 20 => Adult

And the end user wants to modify these rules. Use the Camunda Modeler and modify:

Age >= 21 => Adult

Age < 21 => Minor

Create the tests in the camunda modeler, they work and deploy to Api Project DMN.

Now the DMN is updated.

But what about the tests previously defined in the project?

Does it make sense to have tests integrated into the project in such a case?

It may be that we are wrong in how to use these tools.

Finally, an alternative that we think is:

Business Actor → Uses Camunda Modeler to edit and test DMN File → Send file to Development TEAM → Team add file and changes tests and deploy vía CI/CD.

But it is not agile / fast.

Recommendations / opinions?

Thanks a lot!

Hi

This blog post on DMN testing may be of interest. There is also a video of Bernd giving a presentation and live demo of these approaches…

regards

Rob

1 Like

It might also be a good idea to check out this DMN Tester that was built by recently by out community member Pascal

1 Like

Hi @DNova,

another approach is described here: DMN Manager - an extended DMN modelling toolkit | Medium

Hope this helps, Ingo

1 Like