DMN: promoting decision-based software

Last week TIBCO hosted the first Face2Face meeting of the decision modelling / management experts from FICO, IBM and Oracle representing one of the submission teams for the OMG Decision Model and Notation standard. Although we cannot divulge any details of the meeting results, suffice to say that progress was considered as “good” by all concerned… publication (to OMG) of the first draft of this and the other submissions is due in May 2012.

From an event processing perspective, current decision-based methodologies mostly focus on the “decision as a service” (DaaS?) type models and associated stateless executable artifacts – think TIBCO ActiveMatrix Decisions and TIBCO BusinessEvents Decision Manager, and their equivalents Oracle Business Rules, IBM Websphere Ilog JRules, and FICO Blaze Advisor. Here a decision is something that occurs at a point in time, based on data / information valid at the time of decision, with some explicit process required to revisit said decision.

However for event-based decisions, we can also consider decisions as a continuous operation. This is best illustrated by the “decision” made when some event pattern is identified: the pattern may be identified and/or disqualified multiple times for the same entity, based for example on complex and sophisticated business rules (that may themselves be changing over time). A typical mechanism for this might be inference rules (as seen in TIBCO BusinessEvents). I would expect later versions of DMN to be extended to cover rule-based and continuous-evaluation decisions, but DMN version 1 will likely cover the simpler “Decision as a Process Task” role (where “process task” could be a BPMN Business Rule Activity or a dynamic rule-driven activity). The differences in decision models for continuous versus decision-point based decisions is an interesting area for future discussion!

My thanks again to the participants of the F2F for a successful meeting.

Trade Audit Trails: track and trace for capital markets’ regulatory compliance

tradetrackandtrace-snipOne of the other interesting meetings at the recent OMG standards event was by the Finance Domain Task Force on the requirement for a “Trade Transaction Traceability” standard to meet the regulatory requirements of Dodd-Frank (full name: Dodd-Frank Wall Street Reform and Consumer Protection Act). The idea here is to provide an audit trail (or log), to some SEC-approved XBRL- based XML format, of all the activities and processes that are involved in a “trade” in an investment bank. Thence the need for track-and-trace across front, middle and back office systems.

From a CEP perspective, this is more of a risk management problem than the typical low-latency algo-trading application usually associated with stream-processing CEP in the financial markets. A typical solution for trade track-and-trace would combine some combination of TIBCO Hawk monitoring and TIBCO BusinessEvents CEP to correlate trade processing throughout the bank into a single audit trail while minimising footprints and impacts on existing processes and execution times. Another solution, also CEP-based, would adapt TIBCO Active Service Gateway as a “financial service router” or Services Monitor / Message Interceptor (doing discrete monitoring to create the audit trail).

The OMG is continuing to work on this proposal, and their use of trade and process event correlations (using CEP) could also provide an input to the planned OMG Event Metamodel and Profile standard. And a similar, existing CEP use case is planned as a presentation by an existing TIBCO customer at TUCON this year (in conjunction with an update on TIBCO Hawk technology for the “edge of the Event Processing Network”)…

tucon2011_signature

Decision Modeling Information Day @OMG

dtables-in-financeI was going to blog on the presentations at the Decision Modeling Information Day at OMG, but suffice to say that James Taylor has already done a great job of this so I will just add a few comments from the CEP perspective

1. CEP can be viewed just as “complex event” detection… but increasingly businesses want “complex  event” *processing*, where processing is not just event detection but also decision and reaction. Of course, the reaction can be a traditional orchestrated business process, as in a pattern like:

(a) detect fraud event (b) decide appropriate action (c) react with the Fraud Handling business process

2. Business modeling of decisions, as well as complex events, is an area that none of the traditional business modeling tools seem to be taking seriously. Yet both decision automation and CEP provide huge values to business operations.

3. Methodologists on the decision modeling side are finding receptive audiences in business. These include the KPI Decision Model, which was endorsed by Mark Pettit from Freddie Mac at the info day, the new BRS Question-Charts, and Alan Fish’s DRA. Adapting these for real-time, event-based decisions should be possible, as Larry Goldberg from KPI discussed in the meeting: the main difference with top-down analysis of decisions is that you may or may not be able to detect some of the desired business events!

4. There were some good questions on the role of analytics in, for example, driving CEP-based decisions, or in risk management for trading systems. For example, TIBCO Spotfire Data Miner can be used to generate rules for classification decisions inside a TIBCO BusinessEvents CEP system dealing with high volumes of trading events in a stateful manner.

5. The proposed DMN standard discussed at the end of the Information Day should of course equally apply to decisions in CEP as well as BPM.

Towards a comprehensive Date Time Vocabulary / Ontology

datetimeVery impressive work, by a team led by Mark Linehan of IBM Research, on Date Time was presented by NIST’s Ed Barkmeyer at OMG this week. This is a “work in progress” for likely completion later this year but clearly could play an important role in temporal operations in event processing.

To quote from the latest draft, the objectives of this work are:

1. Provide a Standard Business Vocabulary for Date and Time Concepts. Provide a vocabulary of date and time concepts that business users can share and exploit in their business domain vocabularies and rules…
2. Support Machine Reasoning about Time. Provide a formal ontology that enables machine interpretation and reasoning…
3. Enable implementation…

It covers a time infrastructure (intervals, Allen Relations, durations and SBVR “states of affairs” such as events and situations), organizing time in calendars, “indexical time concepts” such as the meaning of “now” etc in a business context, and so forth. Indeed it seems the only thing NOT covered are the ad hoc adjustments of “leap seconds” to a “year” that are made every now again. And there are versions for UML, SBVR and CLIF, and plans an ODM / OWL version.

Decision Modeling Information Day, March 23rd in the DC area

bedmdtableOMG has posted the (latest) agenda for next month’s Decision Modeling information day – subject to change only if any other vendors sign up to show off their approaches to decision modeling. So far the agenda looks quite balanced:

  • methodologies and notations: chiefly these are
  • vendors and tools: a good spead of capabilities here (updated!):
    • New Wisdom covering the repository of what we used to call “source rules” – the business texts for terms and facts as well as decisions
    • IBM Ilog, as the most successful BRMS tool around today, chiefly supporting the Websphere SOA model
    • TIBCO BusinessEvents Decision Manager, supporting the real-time decisioning and CEP market
    • OpenRules, and using Microsoft Office tools for decision management
    • Sapiens, covering their tooling for decision modelling

Keynote is being given by James Taylor (co-author of  “Smart Enough Systems”) who also promises to give his insights into what decision modeling is all about.

This is all by the way of introducing not only the ideas of decision modeling, but a proposed standard (DMN) in this space, to help enterprises like Wells Fargo and others who use multiple decision table, model and execution environments and want to improve efficiencies and re-use through standardised notations etc.

Should be an interesting session in an interesting week: the day after this the EPTS Virtual Symposium is taking place at the same location…

PM-ISE and NIEM – utilising government standards

I had the pleasure of meeting with the ISE Program Manager (PM-ISE) Kshemendra Paul and DHS Executive Director for Information Sharing Donna Roy at a joint OMG-ISE-NIEM meeting in Washington DC this week. I attended as a part of a team led by OMG CEO Richard Soley looking at improving communications between government standards (represented by NIEM) and industry. Although NIEM is an “information model” associated with government data repositories and exchanges, it (and many of its use cases) are directly relevant to event processing – or rather, many of the use cases should be about event processing. Indeed the report on the NY Times on “How to Spot a Terrorist” looks like an event correlation use case straight out of David Luckham’s or Mani Chandy and Roy Schulte’s CEP books. Let’s hope US security isn’t just about running some SQL scripts across some databases on a regular basis…

It seems one of the challenges for NIEM is representing (and enforcing) data access policy rules in a standard way. And yet “policy decisions” are typically represented by “rules”, with their associated standards being for decision models (the in-startup-mode OMG DMN) and production rule interchange (the newly minted W3C RIF PRD). It will be interesting if government bodies becomes stakeholders in these standards. Meanwhile, I’m particularly struck by the similarities between some of these government requirements with the data access and filtering policy rules used in “Operational MDM”, and the real-time policies applied to things like telco services.

Clearly closer ties between the government departments and industry is going to be a good idea!

1-Minute tutorials on Rete rules and Inferencing rules

At the OMG standards meeting today presenting to a “packed audience” on Business Rule Standards on Production Rules and Decisioning… basically introducing the OMG PRR (version 1) and OMG DMN (pre-RFP) specifications. However, as talking metamodels and roles and graphical models etc risked sending even the most ardent standards-supporter asleep, I thought to interject some educational value of a different kind into the presentation – to wit, 1-page “tutorials” on what does it mean to be a “Rete-type” and “inference” rule engine. Sadly we didn’t have time to do the accompanying certification test in this session.

how-inferencing-workshow-rete-engines-workSo… here are the condensed versions of “all you need to know” about Rete-type rules and Inference rules (with apologies to Charles Forgy and all the other rule engine designers and implementers out there…).

Click on the images for the PDF versions of these, er, “courses”.

Disclosure: both these characteristics are covered by OMG PRR, and used in the TIBCO BusinessEvents inference engine…

Rules and Decisions at OMG

The agenda for the OMG Business Rules Standards Symposium in June has been published: it covers a wide gamut of business-related rule standards/standards-in-progress from BMM (motivations, policies), through to SBVR (documentation/formalisation), PRR (production rule models for BREs) and DMN (decision models), then W3C RIF (rule interchange) and OWL (ontology).

From an event processing perspective, the domains of “decisioning in event processing” and “business rules” certainly overlap somewhat. TIBCO BusinessEvents Decision Manager, for example, provides managed decisions that are driven by event detection (and is one of the most recent “rule management” introductions from a major software vendor).

Business rule standards can impact a number of touchpoints in event processing, as we covered in a presentation to the Dagstuhl workshop, such as:

  • BMM: define the strategy and policies that an event processing system should assist with
  • SBVR: defines the business ontology / vocabulary, and associated business constraints, against which events are matched and applied respectively
  • DMN: defines the decisions used in processes to support policies in event-driven applications
  • PRR: defines the production rules, optionally event-driven, used to represent policy, business rule and decision logic
  • RIF: defines the interchange format for rules representing basic logic, or even production rules and ECA rules

The standards community for the “rules and decisions” domain is still quite small compared to the impact such decisions and rules have in general IT – just think how many business rules direct BPM design, or how many decisions are made in BPM systems. Major vendors cooperating in the standards efforts include both IBM and TIBCO; FICO recently rejoined the PRR effort and Oracle is contributing to RIF. Perhaps the time for standards has come!

Disclosure: TIBCO is contributing the presentation on Production Rules and Decisioning.

Knowledge-Driven Process Modeling…

… is the title for the replacement to (and presumed superset of) the Case Management OMG specification proposal, per this report from OMG task force co-chair Fred Cummins, albeit within the interesting context of advanced healthcare IT [*1].

Very relevant to the knowledge-driven medical domain (and to case management) is the ability to respond to events (as in event-driven or event-based processes) – events provide new information that extend both the current patient and medical condition knowledgebases, for example. Out-of-sequence and disruptive events need to be handled, and medical deductions and conclusions can certainly be defined as “complex events” (i.e. aggregations and combinations of prior events) … probably with the addition of some probability factor!

Also very relevant is that inference rules are one of the more useful knowledge representation mechanisms – used both in formal logic as well as business rule engines – making rule-driven processes truly declarative, ad hoc and dynamic. Event-driven and rule-driven processes are both areas covered by CEP technologies like TIBCO BusinessEvents. And in OMG inference rules are covered by the PRR extension to UML.

On the other hand, the term “knowledge-driven” [*2] can cover a number of things beyond “event-driven business processes” and “rule-driven business processes”. For example, events can be viewed as documentable and classifiable constructs for use in ontologies (like OWL), and rules can be followed by medical staff, such as via checklists or flowcharts. There is also the domain of “knowledge management” in the form of content or document management  – probably ideal for case note recordings.

Fred’s comments include:

“Knowledge-driven processes for treatment of medical conditions will support intuitive medicine with improved tracking and record-keeping while supporting performance measurement and encoding of insights to improve and streamline practices.” Whenever I read “tracking” and “performance measurement” I think of event tracking and concepts like “track and trace”. When I  read “encoding of insights” I see “situation awareness”. Note these are both key complex event processing indicators!

“Specifications of activities can easily be changed to introduce new technology or to provide guidance in the use of certain procedures or medications. More precise processes can be incorporated using conventional business process modeling technology, but processes can still be adjusted to deal with unforeseen circumstances.” I’m pretty sure Fred doesn’t mean to imply ad hoc processes are imprecise, but in fact may be selected or defined according to current knowledge. Knowledge representation in automated systems usually involves rules – and event-driven rules are typical of CEP technology.

“Both intuitive and precise processes can be interwoven and evolved as improved techniques that are discovered or developed.” This means ad-hoc processes mixing manual and automated processing. Most medical processes involve a health-practitioner-in-the-loop, so this makes perfect sense.

In my humble opinion, knowledge-driven processes (including medical processes), and their associated models, are a very interesting area, with much overlap with the state-of-the-art rule-driven CEP world. Whether there is enough concensus for a standardization effort yet, given (1) only 2 vendors responded to the preceding OMG RFI on “dynamic process activity modeling” and (2) “knowledge-driven process” is such a new term it doesn’t even have an entry on Wikipedia yet (!), is open to debate… which no doubt will occur at the next OMG meeting.

Notes:

[1] Interestingly, advanced medical healthcare support is one of the first use cases in the EPTS Use Cases Working Group.

[2] Possibly the proposed standard is simply misnamed. For example a better fit might be the moniker “Ad hoc Process Modeling” (or somesuch) that would avoid any contentious issues around “knowledge” coverage and representation.

Standards news: PRR and DMN updates…

This week OMG’s Technical Meeting has had most buzz around the BPMN 2.0 submission (and congratulations to that team, for which TIBCO is a supporter). Some of the other stuff going on includes:

  • PRR or Production Rules Representation (which, for complex event processing like in TIBCO BusinessEvents, can include event-condition-action rules using standard forward-chaining semantics) starts the Revision Task Force process for PRR1.1. A few tweaks are due, but more interesting was to see 2 more vendors attend the PRR session this week. Also, note that UML tool NoMagic is presenting on PRR at ORF’09 later in the year…
  • DMN or Decision Model and Notation started on its first stage of development, which is the identification of use cases and roles for defining UML-based decisions for a future RFP. We had some good discussions (which I’ll report in a future post once I have reported to the DMN community), and it is clear that this could be a very key standard for business modelers, end-users and tool vendors. Of course the relevance of this to event processing is that many CEP/EP systems’ role is to support decisions…

A somewhat hotter debate continues (/is) regarding the proposed Case Management RFP, which was developed from a Dynamic Business Activity Modeling RFI last year (which TIBCO responded to, and was also covered by our session at the recent Semantic BPM day in Berlin). Many BPM applications are also case management applications, but some case management requires more sophisticated event-handling, rule-driven processes, decision management, and case record management and recording (technologies that TIBCO mostly covers under BPM+). One school of thought is that the more sophisticated requirements for case management need to be rolled into the common BPM standards stack (including BPMN); another is that multiple different standards should be used flor flexibility (such as combining BPMN with BMM, PRR and DMN). From an event processing perspective, of course, case management (by one definition at least!) involves applying incoming events to the state of some case in order to determine whether processes need to be started, continued, halted or changed – in other words CEP technology can often be applied for case management areas in government, finance, healthcare, etc.

Some of the other case management discussions can be found from EBizQ, Bruce Silver, and Derek Miers.