Fri, 02 Nov 2007 15:45:53 +0000 James Taylor [*1] on a vendor blog [*2] made a reference to CEP in his blog entry on a BRForum07 panel: Increasingly the focus on a real knowledge economy and the realities of a highly dynamic world economy mean that more and more a business strategy must include the elements of decision management. The ability to embed your knowledge in your systems in a flexible, responsive way is critical and In an automated world only decision management can turn insight into (automated) action. SOA and BPM are valuable in this regard (and others) but better decision making and management are critical. Indeed the growth of SOA as an approach combined with BPM and CEP makes the need for smarter decision services urgent.
Given that “Decision Management” is about changing rules (usually as part of a strictly controlled business workflow), with appropriate suppporting technologies (rule services at deployment-time, rule editors, rule generation from machine-learning and analytics, rule updates from BI reports, etc), its clear that this has indeed a good overlap with CEP systems (especially those that are model-driven to allow agile development, use rule-based techniques for event patterns and decisions thereon, etc). I hope James does not mind me rewording his entry as follows for CEP-blog consumption:
Increasingly the focus on a real-time knowledge economy and the realities of a highly dynamic business-world economy mean that more and more a business strategy must include the elements of real-time event and decision processing and management. The ability to embed your knowledge in your real-time systems (in a flexible, responsive way) is critical and in an automated world only event-based decision management can turn insight into (automated) timely action. SOA and BPM are valuable in this regard (and others) but faster and better decision making and management are critical. Indeed the growth of CEP SOA as an approach combined with BPM and SOA CEP makes indicates the need for smarter decision services urgent systems is already recognised.
Now, that reads MUCH better!
Of course, the underlying message is the same: define and update business logic without obfuscating it inside “code”. Use smart techniques for updating rules (including analytics, either traditional data-warehouse based, eyeball, or real-time inside-the-CEP statistics driving rule parameters) [*3]. Live long(er) and prosper…
Other comments in the blog are agreeable too: A focus on costs is being replaced by a focus on opportunity. CEP certainly opens up new opportunity through real-time insight. The potential for inter-organizational decision making is especially exciting… CEP allows you to view events across an organization (ie regardless of stovepipe systems and business organization). But then, this is a challenge as well as an opportunity, given human nature and that humans are probably in charge of inter-organizational access to underlying business events!
[*1] Disclaimer - James is an ex-colleague and also, as far as I know, the inventor of the term “EDM”.
[*2] The EDM blog is about Enterprise Decision Management, defined as Predictive Modeling (for analytics) + Business Rules (for deployment and end-user rule management). The technology today is almost entirely SOA-based - ie no CEP capabilities other than being invokable from CEP as a business service. Its TIBCO equivalent is currently your-favorite-analytics-tool/visual analysis tool (TIBCO Spotfire) + TIBCO BusinessEvents (for inference rules) and/or iProcess Decisions (decision tables).
[*3] Some people might be confused by “rule-based CEP” and the relationship between “rules” and “pattern matching”. You can use statistical techniques to define the rule (conditions) you need, and you can execute rules either in a rules engine or via some other algorithm. You can also use (control) rules to determine what algorithm to use for any particular situation - important if algorithm performance varies with context. Tools like TIBCO BusinessEvents are designed to be extensible to allow pretty much any Java library / algorithm to be applied to assist in event processing. The nice thing about rule-driven CEP is that you can include event rules *and* business decision rules, in the same place (with reduced latency vs a service call).