Modeller Usage with large models and nested subprocesses


#1

Hi,
occasionally, we have quite large bpmn diagrams, that use nested subprocesses.
Currently, we are using signavio for modeling those diagrams, where each collapsed subprocess is an own process definition, modeled in a separate file.
Now, we are evaluating camunda Modeler, for modeling those larger diagrams and export them to signavio afterwards.
We need to use collapsed subprocesses, call activites are no option.
In order to evaluate camunda Modeler, I re-modeled the original diagram in camunda Modeler (see attached file).
When I open the file in camunda Modeler Version 1.12.0, I’m facing the following issues:

  • when I change the type of a collapsed subprocess to expanded (“Change type” and then select “Sub Process (expanded)”), change the content of the subprocess and change the type of the sub process back to collapsed (“Change type” and then select “Sub Process (collapsed)”), the layout of the main model, containing the sub process, is somehow changed.
  • on uncollapsing a subprocess, the elements of the main process are greyed out, which is good, but some elements are not, which is confusing.

Can you reproduce my issues?
Do you have any idea, how to work around them?
Thanks a lot,
Georg

pvcm.bpmn (292.3 KB)


#2

Hi,

we’re actually working on being compatible with Signavio regarding the issue with subprocesses.

You can expect this to be fixed soon.


#3

One problem with Signavio is that it doesn’t regard subprocesses being part of the main process. So you can export a nested process and import it to camunda which works fine (except for the layout problems reported above). But when you alter the model in camunda modeler and save it, you can only re-import it to Signavio as a completely new model. It won’t update the old Signavio models (for Signavio there are multiple models) to a new revision. I assume, this cannot be solved by the camunda folks but needs to be done a few blocks away.


#4

Hi,
I’ve reported a bug at signavio:
https://jira.signavio.com/servicedesk/customer/portal/1/SCS-9483
No idea, how I can make the ticket public.
May be, you can find a solution for the problem, together with signavio?
Thanks a lot,
Georg


#5

Are there plans to develop any option to display nested subprocesses in a more transparent way?
For instance: When expanding a collapsed sp, the main process becomes invisible, and is visible again, when the sp is collapsed.

I appreciate that you guys don’t want to save the sp in a different entity, because it would be in conflict with the bpmn specs. Just a solution in terms of displaying it in the modeler would solve the challenge within camunda and there would be no need for working with two systems.

Thx
Rainer


#6

Hi philippfromme,
I checked camunda modeler V 2.2.3 and it looks much better, then initially.

I did 2 checks with the new modeler:

Check 1:
I navigated through various subrocesses of pvcm.bpmn ans occasionally chenged the content of the subprocesses.
Finding:
The position of the tasks stays the same, but still the lines between the tasks (edges) are different from the initial diagram. Furthermore, if I navigate through the sub processes, un-/collapsing them, I never get the initial state. So, I have to save.

Check 2:
I exported the original executable process from signavio, that pvcm.bpmn is copied from. I opened this process with modeler.
Findings:
1.: When I open it, the log shows entries like
Imported BPMN diagram with 10 warnings [warning]

unparsable content detected
line: 28327
column: 12
nested error: duplicate ID [warning]
I checked the originally exported xml-file from siganvio, but it doesn’t have the id’s as duplicates.
Only the modeler has them duplicate, when I open the xml-view of the model.

2.: When I edit the (signavio exported) model (for example in the 3rd hierarchy of submodels), I get an error in the log view:

TypeError: Cannot read property ‘children’ of undefined
at MoveConnectionHandler.execute (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:95197:63)
at file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:84925:31
at CommandStack._atomicDo (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:84888:5)
at CommandStack._internalExecute (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:84919:8)
at CommandStack.execute (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:84675:8)
at Modeling.moveConnection (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:94145:22)
at file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:96444:16
at forEach (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:149378:20)
at MoveHelper.moveClosure (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:96438:24)
at MoveElementsHandler.postExecute (file:///home/groever/temp/camunda-modeler-2.2.3-linux-x64/resources/app.asar/public/index.js:95287:16) [error]

After that error, I can not edit the model anymore. Means, the roundtrip between signavio and camunda is somehow interrupted.

Could you please help with those issues?
Thanks a lot,
Georg


#7

Can you be more specific about how to reproduce the error? I opened all the call activities and I didn’t get any errors.


#8

Hi philippfromme,
thanks a lot for the fast reply.
I edited yesterdays post.
Are my findings now clearer?
Cheers,
Georg


#9

Hi Georg,

can you please provide the diagrams mentioned in the edited post?

Best,

Maciej


#10

Hi Marciej,
this is, what I did:

  1. I created a Diagram in signavio, containing a sub process
  2. exported the diagram (name : “Neuer Prozess (Kopie).bpmn”)
  3. opened the diagram in modeler
  4. Edited the subprocess (added a task before task 1) in modeler
  5. Saved as “Neuer Prozess.bpmn”
  6. imported the modified process to signavio

When I open the modified process in signavio

  • the preview popup of the subprocess is OK
  • when I open the subprocess, I can not scroll to the upper part of the canvas. Thus the newly added task is not visible.

With more complex hierarchies of subprocesses, I face the same problem, but more severe: The modified subprocess as shown in signavio sometimes collapses to a single point.

The warnings and errors I mentioned in my last post only occured in process descriptions, that are outdated. So this seems to be not relevant.

Thanks a lot!

Georg

Neuer Prozess.bpmn (136.3 KB)


#11

Neuer Prozess (Kopie).bpmn (145.5 KB)


#12

another example of a process, creaded in signavio, updated in modeler.
If you load it in siganvio again, the model looks somehow strange.
Neuer Prozess(1).bpmn (160.5 KB)


#13

On MacOS with Camunda Modeler 2.2.4, the diagrams provided by you open without warnings or errors. Please explain what “looks somehow strange” means for you. A screenshot could be useful.


#14

Hi barmac,
may be, this is a missunderstanding.
in modeler, it looks fine, but in signavio, the first sub process looks strange:

Apart from that, I found another issue, concerning subprocesses.
If I do the following:

  1. Create a diagram in signavio
  2. export it to xml
  3. edit it in modeler
  4. import the xml to signavio

When importing the diagram to signavio, signavio shows a dialog, with 2 options:

  1. update the existing diagram an increase the reviaion
  2. add the diagram with revision 1, keeping the original diagram untouched.

If a diagram contains subprocesses, option 1 is not working.

Could you please have a look into both issues?
Thanks,
Georg


#15

Hi barmac,
in the meantime, I filed a bug with signavio and signavio version 12.12.2 together with the current camunda modeler (version 2.2.4) are looking much more promising, regardng the “camunda-signavio roundtrip”.

But, there are still 2 issues on the camunda side, that I would like to address:

  • When opening a process with a collapsed sub process (for example pvcm.bpm), the collapsed subprocess is initially shown like , but when navigating into the sub process and closing it again, the edges are moved and the bpmn-file needs to be saved ( see finalSubProc in my next post).
  • when importing the modified process to signavio, the layout in signavio is somehow messed. I opened a bug in signavio (SCS-9483), but they say, the reason is a “different interpretation of the starting point of the drawing area” on camunda side. Could you please get into contact with signavio on the bug

Thanks a lot,
Georg


#16


… because I’m a “new user” to your forum…