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 the BOject Modeling Group (OMG) 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 design time 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 easily 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 | ... |
Design time 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 risk score. At level 1 this decision looks trivial.
When expanded to the next level,it shows that the decision consists of three separate decisions.
At level 4 the decision looks like this:
It is possible to completely expand all decisions, knowledge models, input data and sources in one single graph, but this will most likely result in a diagram that is not usable for any type of audience. Therefore it is advised to expand sub decisions in separate DRG's. Shown below is such a DRG for the sub decision Risk score bonus.
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