Within organizations decisions are made frequently and have an important impact on reaching the organization's goals. Decisions are made using logic, even if that is not always obvious. There are many organizations that have automated their operational decision making using software. Blueriq is a platform that is often used to make decisions.
Therefore, Blueriq adopted OMG's standard of Decision Model and Notation (DMN) with regards to the Decision Requirements Graph (DRG). However, some constructs in Blueriq's DRG differ from the standard. Furthermore, Blueriq uses a DRG in designtime and a slightly different DRG in runtime.
Best practices in designing decisions
When creating a business model in Blueriq, one must always aim to model decisions that can be easliy understood by the business. To verify whether the level of complexity of th decisions is acceptable, a DRG can be generated at any time in the design process. This DRG is then used to visualize the decision and its sub decisions and by that give insight to a business engineer and for instance an analyst on how this particular decision is made.
A best practice when designing decisions is given below. It is not to be used as "the one and only way" but should be treated as a possible means to create understandable decisions.
1 | Main | Ask yourself the question what the main decision is. If you think of more than one answer, split these decisions if possible. |
2 | Type | Note that a decision is not bound to be a Boolean. In general, there are three types of decisions:
|
3 | Sub | For each identified decision, determine if the decision is preferrably built up in meaningful sub decisions. These sub decisions could be reusable decisions - in fact reusable decisions will most likely be sub decisions - but not every sub decision has to be a reusable decision. Think of a complex calcutaion where intermediate results are never reused but are created nevertheless, for the sake of understandability. |
4 | Circularity | Avoid circularity. When decision A depends on the outcome of decision B and decision B needs the result of decision A as input, you're in trouble! When desiging decisions top-down circular references can easliy be avoided. |
5 | ... |
Designtime Decision Requirements Graph
When designing a decision, make use of the Decision Requirements Graph (DRG), depicted by a scale icon:.
(for more info on and where to open DRG's see Decision Requirements Graph (DRG))
Let's say we're modeling a very simple decision that determines whether someone will receive a discount on some sort of insurance.
Females are eligible for this discount, males are not. The decision requirements graph will probably look something like the one sown below.
Use Ctrl-Click on the various elements to open them and verify that the discount is modeled correctly.
Although even for simple decisions the DRG is very useful while designing or reviewing, the true strength of the DRG is exemplified when designing or reviewing multi-layered complex decisions. See the example DRG below, that shows the decision that determines an applicant's riskscore.
Runtime Decision Requirements Graph
text
Constructs of the Decision Requirements Graph
text
Decisions
text
Business knowledge models
text
Input data
text
Knowledge source
text
Constructs of Decision Modeling in Blueriq
text
Attributes
text
Sources
text
Business rules
text
Decision tables
text
Default expressions
text
Data rules
text