TIBCOmmunity navigation
Apr 27 2010

Event processing, states, and something called BEDL
Posted by Paul Vincent

BE4 State ModelI don’t normally have much to say on BPEL (as a language for orchestrated processes). A BPEL engine can be used to execute business processes and actions post-”complex event detection”, but at the end of the day its just a particular - albeit common and standards-based - technology for executing process orchestrations [*1].

On the other hand, state management of entities is particularly interesting for Complex Event Processing. In a nutshell, the state of some entity will often determine some event pattern detection, as well as the relevance of certain business decisions, operations / processes, and actions. CEP tools handle state, and some (like TIBCO BusinessEvents) actually allow developers to model state explicitly - usually for entity lifecycle management, including complex event pattern lifecycles…

It was therefore somewhat fascinating to find a new IBM initiative called BPEL4Data and an associated Business Entity Definition Language (BEDL) comprising of entities and state models (and indeed, almost MDM-like data management operations) [*2].

One trick I think the IBM team have missed is in tying themselves to (another reinvention of) BPEL. State models involve states and event-driven state transitions: to me this means that states are part of the behavior of entities, an active not a passive attribute. And conditional state transitions mean rules rather than processes. Ergo its no accident that TIBCO BusinessEvents state models are defined in an environment that combines them with events and declarative rules.

Of course BPEL - and orchestrated BPM - have their place and use cases - indeed TIBCO has many successful BPM customers, some of whom are combining entity models and states (in TIBCO BusinessEvents) to control workflow processes (in TIBCO BPM). There are indeed many patterns to combining event-based state changes with process orchestrations, and IBM’s focus on just one will be interesting to watch.

Notes:

[1] TIBCO’s BPM group of course has much more to say on BPM and BPEL …

[2] TIBCO followers will be bemused by the acronym overloading here:
- IBM BEs (Business Entities) are directly equivalent to TIBCO BE (BusinessEvents) concepts, with UML-based state models applicable to both.
- IBM BEs map via IBM BPEL4Data to BPEL business processes, whereas TIBCO BE concepts and states are directly executed in the TIBCO BE rule engine (with no BPEL intermediate step, if you like), with BPM processes as optional (downstream) activities.

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

3 Comments

  • By Prabir Nandi, April 27, 2010 @ 14:19

    Just wanted to comment (as an author of the IBM initiative) is that the BEDL spec is not tied to just BPEL. Its designed to work with any process-centric languages (BPMN, BPEL etc.). BPEL is just used as an example here to show how the pattern works. Pls note the section “Use of BEDL components” in the article for a bit more on this.
    Tks !

    VA:F [1.4.2_694]
    Rating: 0.0/5 (0 votes cast)
  • By Prabir Nandi, April 27, 2010 @ 14:57

    Also the BEDL spec is not just about states and transitions, but also about state-based access policies that enables the dynamic “view” of the BE content for different roles. Also how this architecture supports m x n configurations of processes with business entities. So please do not discount this as just a state machine. Appreciate your interest. Lots more to come on this thread in the months ahead.

    VA:F [1.4.2_694]
    Rating: 0.0/5 (0 votes cast)
  • By Paul Vincent, April 28, 2010 @ 00:04

    Prabir - thanks for commenting and good luck with the work.
    The access policy stuff is what I referred to as “near MDM”.
    Cheers

    VA:F [1.4.2_694]
    Rating: 0.0/5 (0 votes cast)

Other Links to this Post

RSS feed for comments on this post. TrackBack URI

Leave a comment