Our company is committed to model executable business processes using BPMN. As soon as processes become complex Camunda Modeler shows its limitations especially managing subprocesses, call activities and in general structured processes suited to be modeled with multi diagram BPMNs.
According to BPMN 2.0 specifications, it’s possible to define multiple bpmndi:BPMNDiagram tags in a single BPMN file. So we started forking bpmn-js source code and modifying it to add this feature, coming up with this modeler example demo which adds diagram controls to the canvas, as shown below.
After that, we edited camunda modeler source code, to add multi-diagram controls to it and we created one plugin which makes use of this feature in this example scenario. Suppose, as described in this topic, that you want to get a number in input and dinamically create the specified number of subprocesses.
The solution described in that topic is to create two partecipants in a collaboration and, with a call activity from the first one, call the second partecipant.
With this feature, instead, the collaboration is not needed anymore. We can define the two processes in two different diagrams of the same bpmn file, defining the call activity to call the second process in the bpmn file and, as additional feature, we can directly double click on the call activity to see the linked process!
We already made a pull request for the bpmn-js part and we are waiting for it to be integrated to open the pull request for Camunda modeler.
What do you think about it? We’d really appreciate your opinion, feel free to support and collaborate with us!