Improve DMN modeling UX for Camunda Cloud
See original GitHub issueIs your feature request related to a problem? Please describe.
In Camunda Cloud ~1.3.0
~ 1.4.0
, we will support evaluating DMN decisions in Zeebe. Since Zeebe will use a different DMN engine than Camunda Platform and doesn’t support all features from the Platform, we should remove some properties to improve the modeling UX.
Describe the solution you’d like
In order to improve the DMN UX for Zeebe and the new DMN engine, we should adjust the following parts:
- decisions (in DRG view):
- remove the property
Version Tag
- not supported by Zeebe - remove the property
History Time to Live
- not supported by Zeebe - remove the description of the Id property (similar to the Id property of processes) - in Zeebe the ID will be serialized as
decisionId
(in Zeebe, keys are the identifiers of the record entity) - tracked via https://github.com/bpmn-io/dmn-js-properties-panel/issues/29
- remove the property
- decision table:
- remove the property to select the
Expression Language
on inputs (i.e. input expressions), input entries, and output entries - Zeebe supports only FEEL - remove the property
Input Variable
on inputs - in FEEL, the input value can be accessed by using?
if needed - remove the options
integer
+long
+double
in favor of a new optionnumber
on selecting theType
of inputs and outputs - in FEEL, there is only a number type (represented asBigDecimal
) - add the options
time
+dateTime
+dayTimeDuration
+yearMonthDuration
+Any
on selecting theType
of inputs and outputs - in order to cover the most common types of FEEL
- remove the property to select the
- literal expression:
- remove the property to select the expression language - Zeebe supports only FEEL
- remove the options
integer
+long
+double
in favor of a new optionnumber
on selecting theVariable Type
- in FEEL, there is only a number type - add the options
time
+dateTime
+dayTimeDuration
+yearMonthDuration
+Any
on selecting theVariable Type
of inputs and outputs - in order to cover the most common types of FEEL
Describe alternatives you’ve considered
No changes. It should be possible to deploy a DMN with the current modeler if no unsupported features are used. Otherwise, the deployment with the DMN is rejected.
Additional context
None.
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:7 (7 by maintainers)
Top Results From Across the Web
BPMN and DMN Modeler for Atlassian Confluence - Camunda
Document business processes with the BPMN and DMN Modeler for Confluence - two plugins available for free on the Atlassian Marketplace.
Read more >DMN Tutorial - Camunda
In DMN, decisions can be modeled and executed using the same language. Business analysts can model the rules that lead to a decision...
Read more >Page 12 | Camunda
With Camunda, business users collaborate with developers to model and automate end-to-end processes using BPMN-powered flowcharts, along with DMN decision ...
Read more >Camunda Platform 8.0 Released - What's New
If you are using Camunda Cloud today, the update process has not changed and is ... we've redesigned the UX to be more...
Read more >Camunda Cloud 1.1.0 Released
Improved user experience and instant upgrade to the Camunda Cloud Professional Plan with a self-service credit-card purchase option – no need to ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
That approach would follow the principles that we defined for validation and linting:
However, so far there is no DMN linting in place. So, doing things differently here is not preferred but is an option.
@barmac we should plan a few more adjustments to improve the UX:
Restricting the naming/usage of the decision ID
decisionId
must be a validQName
decisionID
may be referenced in a dependent decision (i.e. to access the decision result/output of a required decision)decisionId
has a special character (e.g.my-decision
) and it is used in an input expression then the FEEL expression can’t be parsed and the DMN is rejected by ZeebedecisionId
(but this behavior is not correct according to the DMN specs)output name
(i.e. the name of a decision table output) andvariable name
of decision literal expressionsSuggestion/idea:
decisionId
(and the other properties) and limit the value to alphanumeric namesAvoiding differences of the decision ID and the output name
output name
output name
can be named independently from thedecisionId
output name
is not used if the decision table has only one outputdecisionId
. It uses theoutput names
only if the decision table has more than one output.output name
is different from thedecisionId
and theoutput name
is used in an input expression then the FEEL expression/the DMN decision may fail or return an unexpected resultdecisionId
(but this behavior is not correct according to the DMN specs)Suggestion/idea:
output name
is not editable if the decision table has only one outputcc: @nikku