Executing Decisions
Traceable Automated Decision Making
Executing Decisions
-
Many products have Decision Services: invoke the function with the inputs and get the output
-
From a process: use Business Rule Task and refer to decision model
-
Consider testing using parameterised tests
From a Business Process
-
Don’t model decisions with gateways
-
Often followed by a gateway to act on the result or a task that uses the data produced
-
Versioning is an important concern here: consider the lifecycles of processes and decisions
-
Even more complex? Consider using decision flow that coordinates multiple DMN models, service tasks and/or script tasks from a call activity in the process
With a Process Engine
-
Make sure to make decision input expressions independent of execution environment
-
Resolve expressions to values before inputting
-
Don’t refer to beans or other technical concepts from the decision table
-
Create pure functions
-
-
Use your engine’s components well
-
Routing logic: in a process model that sometimes acts on decision output.
-
Decision automation with DMN models
-
Service invocation
-
Human task management
-
Scheduling
-
Advanced workflow patterns
-
…
-