TIBCOmmunity navigation
Oct 11 2010

Modelling Rules and Inferences: the goal network diagram

The Goal NetworkThis week is RulesFest in San Jose California, at the Dolce Hayes Mansion on the South side of the city (which I think I last visited a decade ago during a dot-com-era company party that involved riding, er, “toilet buggies” around a car park - thats quite enough reminiscing I think).

One of the presentations planned this week is by Barbara von Halle and Larry Goldberg who wrote the “Decision Model” book, and who are one of the influences for the DMN Decision Modelling standard being worked on (as an OMG RFP) with IBM and Jan van Thienen (Mr Decision Table). One of the things I liked about the KPI model is how it can be viewed as a Goal Network model (albeit more an analytical logical tree in KPI’s view) for organising decision metaphors like decision tables. Such a Goal Network is of course ideal for modelling inference rulesets of the type used in rule engine programming and complex event detection: the goals define the intermediate states and the rule conclusions represent goals that are subgoals in other rules’ conditions.

The interesting thing about the Goal Network is that it applies equally to process design and decision design (where decisions can be decision tables or inference rulesets or anything else). The nice thing about a Goal Network for inference rule engines is that the goal network can be “executed” automatically during “inferencing” or rule engine processing; with decision tables you have to explicitly control the execution path (which of course could be preferable in some scenarios).

I’ve a strong feeling that “goal networks” and their multiple viewpoints are the next interface development area for those bridging the gap between business models and IT.

VN:F [1.4.2_694]
Rating: 4.3/5 (3 votes cast)
  • Share/Save/Bookmark
Sep 22 2010

OMG Decision Model Notation update

At the OMG technical meeting this week we had a review of the draft DMN RFP by the Business Modelling and Integration group experts, and a thought-provoking presentation by Barbara von Halle and Larry Goldberg of KPI on their KPI Decision Model which is proving very attractive to business analysts.

From an event processing perspective, “decisioning” is part of “event processing” in that it is the consumer of complex events: when you detect an event pattern you decide what to do with it. Of course, it is also extremely relevant to day-to-day business processes and operations…

Goals as related to processes (per Wikipedia)

Goals as related to processes (per Wikipedia)

Some of the conclusions the DMN RFP team came to this week:

  • Decision modelling is more than just a complement to BPMN, and indeed the RFP will not over-emphasise the relationship between the two. Indeed, in some respects, the “goal-driven network” idea for business models is as applicable to process models as it is to decision models. Decision modelling could become the dominant analysis aspect in future years: consider a business process like “loan approval” and you don’t need a degree in computer science to work out that the business process is there just to support the business decision on whether to approve a loan!
  • Barbara and Larry emphasised the need for metrics and business motivation in decision modelling. Monitoring decision events is of course yet another event processing task.
  • The “business model” - “IT model” dichotomy can take many forms in a decision model, with the classic being the business analysis model being the logical decision structure or goal-driven network, using business terminology, with the underlying decision metaphors (such as decision tables - the first and obvious choice for the DMN RFP) being IT models. Transformations from things like SBVR to UML Class, and decision table to PRR, will be out of scope for DMN itself though - such transformations will either be subject to other standards or be vendor-specific. But they and the Model Driven Engineering ideal become much clearer using a DMN.
  • The logical decision model or goal-driven network has ramifications for the inference rule engine business. I’ll blog on that separately! :)

So in summary: DMN is looking like it could be very useful. And I expect attendees at the RulesFest and BAForum conferences next month will enjoy the KPI show as much as I did. For those interested in decision metaphors, BRForum (alongside BAForum) also has the Decision Table World Congress

VN:F [1.4.2_694]
Rating: 4.0/5 (2 votes cast)
  • Share/Save/Bookmark
Mar 25 2010

Standardising Decision Models for fun and profit

Sample Decision Table (model)OMG convened in the murder capital of Florida this week, possibly to add some excitement to the normally dour world of IT standards. There are, as we have recorded before, a number of ongoing standards initiatives that are relevant to event processing, with 2 in particular at OMG in progress:

- PRR (the Production Rule Representation) currently at version 1.0 and working towards a 1.1 tidy-up; ECA rules can be covered under PRR, although the current scope is not event-specific [*1]
- DMN (the Decision Modelling Notation), currently starting up as an initiative [*2].

This week DMN took a significant step forward in the standards process, when it gained as a supporter the world’s foremost “decision table” expert, Jan Vanthienen from Katholieke Universiteit Leuven in Belgium. Jan presented “decision tables” to the OMG’s Business Modelling and Integration group.

Jan explained how “decision tables” are just another representation of business rules, enabling completeness (every possibly input combination is covered) and exclusivity (every possibly input has ony 1 possible outcome associated with it) constraints to be enforced.

Decision Tables can also be used in several ways: from an IT perspective we tend to view them as an executable decision service (given inputs, determine a decision output). However, they can also be used in a goal-driven way: what input is needed to achieve a particular output. For the CEP community, of course, the “implicit invocation event” can be an explicit table condition…

There are several variations in decision tables defined as models, too: the most useful for business analysis is the one that defines all outputs as binary (boolean) results and it effectively is a lookup for outputs against inputs. Again, in IT systems these are normally truncated to a form where the output is the appropriate *action* (value being updated to some expression).

As one who has been preaching decision tables for many years, Jan has a number of reasons why people should use decision tables as a business rule representation for decisions:
- compact but powerful visualisation
- easy to verify (check) to avoid errors
- modular, compatible with hierarchies of decisions
- easy to make fast and efficient execution engines.

As an example, Jan used some text from a sports page on predicting some sportsperson’s tennis ranking based on the possible outcomes for the some future tournament results. Placing this logic in a decision table allowed the outcomes to be easily seen, and the specification inputs (what Jan calls business rule specifications) to be analysed for completeness and contradictions. As such it could be thought that a decision table approach contrasts with use of the OMG SBVR standard (Semantics of Business Vocabulary and Rules), where one defines business terms and constraint rules in a formal, well defined fashion. However it seems that in reality decision tables complement SBVR by providing a structured mechanism for defining fragments of SBVR terms and rules as used in decisions, and combining general rules, exceptions, modalities and timings.

So, effectively, a Decision Table is a relation between states and possible outcomes.

The methodology for defining decisions based on decision tables - a type of decision modelling - is well covered in a particular way by KPI’s book “The [KPI] Decision Model” [*3]. But the process is similar:
1 - interactive exploration of exceptions
2 - starting from text, built up possibilities and populate table

And in an “ease of use survey” Jan undertook, they found a strong preference for tables over trees,  and the same for trees over text, for a sample complex rulebase.

Notes:

*1 = TIBCO BusinessEvents uses inference rule agents that exploit production rules for identifying event patterns and making inferences.

*2 = TIBCO BusinessEvents includes decision table modelling and deployment, for decisions and reactions post-pattern-detection.

*3 = Opher Etzion, EPTS chair, has commented on this book from a CEP perspective.

VN:F [1.4.2_694]
Rating: 4.3/5 (3 votes cast)
  • Share/Save/Bookmark