TIBCOmmunity navigation
Jun 22 2010

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…

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

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.

VN:F [1.4.2_694]
Rating: 4.0/5 (1 vote cast)
  • Share/Save/Bookmark
Sep 16 2009

Business Rule methodology for CEP…

A customer was asking about methodologies around business rules, which was also the topic of a recent LinkedIn discussion started by Paul Harmon of BPTrends (who is apparently extending his BPM methodology to rules). Some general thoughts on methodologies below:

What am I trying to achieve?

  1. For (stateless) business decisions, as usually associated with business rule automation in the literature today, consider that common paradigms like decision tables can be viewed both as specification documents (e.g. in a spreadsheet) as well as executable artifacts. As an example, TIBCO BusinessEvents can import Excel spreadsheets into its Decision Manager.
  2. For (stateful) rule-based CEP and event-driven business processes - event-rule processing can involve multiple entities - events being filtered, patterns detected, facts inferred, actions made etc - and ideally the rules will be specified declaratively, guided optionally by state models.

What is the generic approach to identifying / specifying business rules?

The generic approach is:

(a) Identify the business entities being processed

  • E.g. use cases and actors

(b) Identify associated states

  • E.g. entity states and what decisions need to be applied in these states

(c) Identify the associated events

  • E.g. business changes like new customer, new agent, removed order, etc
  • E.g. occasions when we need to make a decision in a process

(d) Identify business rules against entity / state / event

  • Conditions that apply
  • Reactions or results
  • Inferrences to be made
  • Patterns to be identified
  • Rulesheets / decision tables

What about “business rules” in the widest sense: rules about the business for the business?

The above comments apply to the common-use of  “business rule” relating to rules and decisions in processes, possibly automated (e.g. in rule engines, with the relevant OMG standard being PRR), and possibly as a part of complex event processing.

For the wider definition of business rules, defining business rules as constraints against the business and documented as a business asset (relevant OMG standard being BMM and SBVR) there are additional steps, usually via some controlled business ontology or vocabulary:

(a2) Identify declarative business rule statements that associate entities with each other

  • Eg statements of constraints between the business entities at particular times or on particular business level events

(d) Map business rule statements to associated entity / state / event occurrences to enforce the business rules in particular processes.

What are the  main published methodologies?

There are 2 main providers of methodologies (outside of particular rule vendors’ thoughts ):

i. Barbara von Halle @ KPI: the main reference remains Business Rules Applied and associated methodology although unfortunately this has not been updated (for example, it predates the concept of CEP and indeed TIBCO as the ~3rd largest rule engine vendor). KPI also have a new book about to be released covering more of a decision model approach.

ii. Ron Ross @ BRSolutions: business rule documentation focus - the main book is Business Rule Concepts which is uptodate and covers mostly the wider definition of business rules, but does relate how these map to automatable rules (and events).

iii. For simpler requirements gathering, the (very) basic separation of business rules from use cases is often covered in Use Case books.

How do these apply to CEP?

Part (d) of the generic approach is obviously far more important in pure event processing. The identification of what filters (to events, payloads etc), what patterns (including patterns on streams as well as individual events, and across data combined with events), and combinations thereof are required to identify a complex event effectively requires its own methodology, which we can cover separately.

VN:F [1.4.2_694]
Rating: 4.5/5 (2 votes cast)
  • Share/Save/Bookmark
Jul 02 2009

OMG PRR - the 1st official production rule standard

Congratulations to the OMG PRR team - the OMG have voted the Production Rule Representation 1.0 as a standard for UML modellers to represent production rules (including “sequential” if-then statements as well as Rete-type inference rules). Of course this is not the last version of PRR -  there may be a few bugs to work out and we have commissioned the Revision Task Force already - with a 1.1 release planned for next year. Maybe other CEP vendors will realize the importance of standards (and rules!) and join the effort?

Close behind is the W3C Rule Interchange Format - Production Rule Dialect - which is “imminent”. There was some overlap between the teams involved with these standards so, usefully, and as PRR Core defines “the” generic production rule metamodel, PRD is “compatible” with PRR - meaning conversion between the 2, from  modeling to interchange, should not mean too many hurdles. Indeed, current ideas are for a RIF PRD 2.0 that allows for object models (as opposed to “frames“) and a PRR 2.0 that utilizes the PRR-PRD syntax that uses the PRD expression language… we’ll see.

VN:F [1.4.2_694]
Rating: 4.0/5 (1 vote cast)
  • Share/Save/Bookmark
Jun 24 2009

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.

VN:F [1.4.2_694]
Rating: 4.0/5 (1 vote cast)
  • Share/Save/Bookmark