TIBCOmmunity navigation

Category: UML

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
Jan 15 2009

Temporal Models…

Dr Terry Halpin (of ORM fame) has published on BRCommunity.com a series of articles on temporal modeling. In his latest article he mentions the use of state models, as used in the TIBCO BusinessEvents CEP tool, but concentrates on some disjoint subclasses to describe role types of entities over time. Nonetheless, its an interesting series relevant to time-based event processing.

PS: Shame that BRCommunity is free-registration-required, but some good content on there…

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

Standards: next up, Constraint Programming

Jacob Feldman from 4C presented to OMG this week on the need for standardization in the Constraint Programming (CP) community. Although you can (and often do) represent business contraints in business rules and CEP systems (for example, you can argue that any rule condition is a constraint, or a value range in a decision table is a constraint), CP usually uses special techniques to solve complex business optimization problems that require juggling / relaxing these constraints to find an optimal or near-optimal “solution”. Examples might be aircraft load planning, bus schedules, and delivery vehicle routing. CP solutions to these problems also intersect with the CEP space, as plans are disrupted by events (such as an aircraft flight diversion due to turbulence, an event requiring more bus capacity, and a delivery vehicle breakdown). Sometimes such constraint systems are implemented using production rules, too.

With respect to rule model standards, OMG PRR has defined a baseline “rule behavior” definition, and OMG UML already has object constraints in OCL. It will be interesting to see if standardizing the metamodel for CP problems and engines will exploit or work with these, and how future CP systems will be used with CEP systems.

VN:F [1.4.2_694]
Rating: 3.0/5 (1 vote cast)
  • Share/Save/Bookmark
Oct 30 2008

RuleML 2008: PRR and rules vs decisions

PRRbeta2One of the nice things about Business Rules Forum is that the Rule Markup Conference (RuleML08) is co-located with it. So some of us change rooms today to discuss progress on rule standards, with TIBCO presenting OMG PRR, Ilog presenting W3C RIF, and IBM presenting SBVR’s date-time vocabulary. Is this relevant to Complex Event Processing? Well, later David Luckham presents on CEP aspects. And one of the slides shows the huge overlap between rules and, say, the TIBCO BusinessEvents CEP solution.

Apart from the PRR metamodel we also added some background slides on:

  • the relationship between business rules, decision models and rules,

    RuleScene

  • the RuleML classification of executable rule types, extended with state transition rules, and

    RuleClassification

  • a graphic of the various standards versus other rule representations.

    RuleRepresentationsAndStds

Some of these topics were a cause of confusion for the BRForum folks earlier in this week, and these graphics are subject to change and feedback…

VN:F [1.4.2_694]
Rating: 0.0/5 (0 votes cast)
  • Share/Save/Bookmark
Sep 25 2008

Updated Update on Rule Representations

Jim Sinur, newly returned as analyst for the Gartner camp, just made an interesting post on rule representations. As TIBCO is attending the OMG and W3c rule standards meetings this week, we’re probably in a good position to critique Jim’s view (and make some, er, suggestions).

Lets start at the top. Jim says business rule experts can choose from a variety of representations:

  • “semantics” (by which I think Jim means formal vocabularies rather than OWL-type ontologies and things like Common Logic)
  • decision tables, as offered by most BRMS tools include TIBCO BusinessEvents‘ Decision Manager
  • “rule hierarchies” which may mean decision flows or decision graphs [*1]
  • natural language, which usually means writing rules in any way you want, but could also imply using Ron Ross’ Rulespeak or the OMG SBVR standard, or a constrained language specified by a rule management system for operational (executable process) rules.

Jim then starts talking about rule *execution* rather than business rule representation. I should be clear that “business rules for business people” as defined by BRG et al refer mostly to policy-derived rules, which may be used to guide the development of executable business processes and their associated decisions (such as process gateways or decision services). Typically such policy-type “business rules” are at the OMG MDA computation independent model level. Executable business decisions, on the other hand, typically are at the OMG MDA platform independent model level, which is an IT layer. Such decisions or operational rules may be embedded in process models like OMG BPMN, or (ideally) kept as shareable, declarative production rules per the OMG PRR standard - probably what Jim means when he says “stand-alone rules that can be executed in dynamic sequence where rules are reused in different sequences” (although, Jim, please note that there are precious few rule engines that can forward and backward chain using the same rule definitions). Complex Event Processing is a type of automated process than can use production rules as in PRR.

Jim goes a bit off-track talking about OMG BPDM. Perhaps he was thinking about something else, because BPDM is the Business Process *Definition* Metamodel, not Data Model, and is meant to be a “metaprocess” model [*2].  And it doesn’t have much to do with business rules, other than potentially sharing vocabularies with SBVR and possibly referencing PRR type rules. The latter is unproven at this point in time, but BPDM is interesting simply because of its development potential to provide, in some future version, a shared abstract behavior for both simple and complex event processing. It certainly deserves more support from academic research teams.

In other, related, news from OMG this week:

  1. Apparently the BPMN 2.0 notation is to include more sophisticated event handling. We’ll have to wait until we can review the latest draft, but it will be a pleasant surprise if this provides some CEP modeling capability out-of-the-box.
  2. PRR made some good progress, and will hopefully move to Finalization Task Force 2 to complete - with thanks to Robert Ong at / and MagicDraw for their metamodeling re-work. One of the Forrester analysts endorsed this PRR work this week, too.
  3. There was an interesting panel (OK, it was the *subject matter* that was interesting, not us panel members) on the relationships between rules, processes, and business architectures. And we could have thrown in business events, too. My main points were that “rules” meant both SBVR-type policy rules and PRR-type automated operational rules / decisions, and that vendors need customer support to encourage them to develop standards. And that OMG should not be incubating standards for the sake of it, certainly not without academic contributions.
  4. TIBCO was one of 2 vendors providing feedback on Dynamic Business Activity Modeling. This includes iProcess Conductor, goal- and plan-driven business processes, usually teamed with TIBCO BusinessEvents for decisions on plan selection, plan creation, and plan automation - including event-driven replanning. Also TIBCO BusinessEvents itself is used to model high-level event-driven rule-based state models to drive BPM workflows from business events.
  5. As a consequence of the above, it looks like there is interest in a standard model for Case Management. Supporters are to gather at the next OMG meeting to discuss what this will entail…
  6. Looks like Event Metamodel and Profile and Agent Metamodel and Profile will be issued as RFPs. Any TIBCO customers interested in these, please let us know via email or TIBCommunity!
  7. EPTS membership discussions with OMG started.
  8. Good to see Rob James (HSBC) of NRL fame at the meeting (another Natural Language for rules for Jim’s readers to consider, and a possible candidate to help automate SBVR type rules).

    UPDATE

  9. OMG passed the FTF2 resolution for PRR to get onto its final track, with new additions to the FTF2 team from Inferware, 88Solutions and Unisys.
  10. W3C made good progress on some of the RIF PRD (production rule dialect) with many of the same people in PRR. PRD contributors included TIBCO, Ilog, Inferware, RuleML, Fair Isaac and Oracle.

 Notes:

[1]  Interesting to see one of the few vendors to provide decision graphs has just been acquired. Is there anyone else left out there?

[2] I attended some of Conrad Bock (NIST)’s “advanced BPDM tutorial” this week, so am reasonably confident about this!

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