camunda / camunda-modeler

An integrated modeling solution for BPMN, DMN and Forms based on bpmn.io.
https://camunda.com/products/modeler
MIT License
1.47k stars 474 forks source link

Add ability to inspect gateway fork logic (Labels and Conditions of Outgoing Sequence Flows) in a single place #4043

Open till-stadtler opened 6 months ago

till-stadtler commented 6 months ago

Problem you would like to solve

XOR/OR gateways have multiple outgoing sequence flows. As a user I want to understand if (conditional) outgoing flows of such a forking gateway are complete, or if cases are missing.

Proposed solution

It is impossible to inspect the conditions on these sequence flows in one view, i.e. the gateways properties panel.

I would like to see all sequence flow labels and conditions in the properties panel of the OR/XOR gateway. It would be great to have the following information in one concise view:

Alternatives considered

I like the idea of managing the gateway logic in a single place. It would be possible to make the labels and conditions in the gateway property panel editable. If the labels and conditions on the individual sequence flows are not disabled, the same details would be editable in two different property panels.

Another option would be to only have one property panel which is shared across the gateway and sequence flows. Thus, when clicking on an outgoing sequence flow, the shared property panel will open up instead. Outgoing sequence flows would not have a property panel on their own.

Additional context

This concise view makes it easier to understand if a gateway is complete, meaning that no incident will be thrown given that all involved process variables exist. For incomplete gateways, the following can happen:

I will create another feature request on helping to identify incomplete gateways.


Related to https://github.com/camunda/camunda-modeler/issues/369


Requested in SUPPORT-21481

ingorichtsmeier commented 6 months ago

Like here?

Bildschirmfoto 2023-12-27 um 11 43 45

Picture using the Tooltip plugin: https://github.com/viadee/camunda-modeler-tooltip-plugin

till-stadtler commented 6 months ago

Hi @ingorichtsmeier, That would indeed solve the described problem, thank you!

A tooltip would not go well with the idea of having all the info editable/having one shared property panel. Any thoughts on that?

nikku commented 6 months ago

@till-stadtler From what I understand you want to be able to assess if conditions behind a forking gateway are "complete" or generally "what conditions are configured". You seek tooling support to do that. Is that correct? In this sense I'm not sure if https://github.com/camunda/camunda-modeler/issues/4044 are duplicates?

One solution that @ingorichtsmeier highlighted is a simple overlay on the diagram (https://github.com/camunda/camunda-modeler/issues/4043#issuecomment-1870184212). We could expand this / incorporate it into the core tooling, i.e. show crucial "meta information" as you hover a node on the diagram:

image

What on canvas annotations bring to the table is that they are better at conveying the additional (diagram) context. https://github.com/camunda/camunda-modeler/issues/369 is related.

Does it really matter to you if the information is available on the properties panel, or the canvas?

nikku commented 6 months ago

I updated the issue description with regards to my assessment, please double-check @till-stadtler.

crobbins215 commented 3 months ago

Example of how it could be done https://jira.camunda.com/browse/SUPPORT-21481?focusedCommentId=345263&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-345263