Decision Services in CEP?


 
Thread Tools Search this Thread
Special Forums News, Links, Events and Announcements Complex Event Processing RSS News Decision Services in CEP?
# 1  
Old 10-09-2008
Decision Services in CEP?

vincent
10-08-2008 08:13 PM
ImageOne of the more obvious up-and-coming IT “best practices” is the area of “decision management” - as evangelised by James Taylor at Smart Enough Systems - which postulates that separating and managing decisions is as important as managing business processes. In a “conventional event processing” or synchronous SOA world, this means separate “decision services” invoked to make important decisions during automated processes, or prior to BPMN flow branches - with said decision services defined through entities like declarative business rules, decision tables, or outputs from predictive analytic models. But in an asynchronous EDA or complex event processing world, are “decision services” still valid?

Well, if you already have SOA services defined of any kind, including decision services, then a CEP system can of course invoke / utilize / exploit said services, for example based on the detection of complex events. But in the context of continuous event monitoring, where decisions are embedded along with data and trending statistics, it may not make sense to rely on external (and sometimes relatively high-latency) distributed decision services - especially when the decisions are closely related to the event processing. This means that instead of “decision services” we are talking about event processing elements that embed decisions - and ideally, managed decisions. So instead of “decision services” we can use the term event processing “decision elements”, or in a distributed CEP system, “decision agents”.

From a technology perspective, decision services and decision agents can share many components and ideas - business rules management and business user interface (for business control of the decisions), production rules engine (for efficient execution of declarative rule statements), etc etc. The difference is basicly between synchronous parameterised decision services versus asynchronous event-driven decision agents.

On the topic of the “analytical models” being used to define rules or rule parameters, these can be used to input production rules into a CEP-based “decision agent” just as well as a (say, web services) “decision service”. The main interesting delta here is the middle ground of “operational intelligence” as afforded by CEP systems with their event stores in-situ, continuously running “process refinement” rules as events occur (with such “process refinement” rules being “metarules”, predictive analytics expert systems, advanced statistical trend functions, etc). An obvious example here would be the use of sophisticated analytical functions such as TIBCO S+ functions within a “decision monitoring agent” that updates the decision agent rules (and rule parameters) in real-time.

Notes:

Although obviously one can consider TIBCO BusinessEvents as a source for decision agents and decision monitoring agents, you can also consider the “synchronous service invocation” pattern as a subset of “asynchronous agent invocation”. Which means that TIBCO BusinessEvents is equally adept running as a conventional decision service, for example to do business rule execution in a TIBCO BusinessWorks application (a relatively common use case).

Image

Source...
Login or Register to Ask a Question

Previous Thread | Next Thread

3 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to Start services based on dependent services on other AIX machine

Hi, I just started working on a script. After my research, i found a command which can help me: AIM: To build a script which starts the services (Services 1) on server 1 automatically whenever its down. And it has a dependency on other service (Service 2) on Server 2. So my script has to... (4 Replies)
Discussion started by: draghun9
4 Replies

2. Red Hat

Restart of services if port no is changed in /etc/services in RHEL

I had a doubt if any services need to be restarted if port no in /etc/services in an RHEL setup is changed. For eg, the port no of 443 for SSL may need to be changed. I hope my query is clear whether any services need to be restarted if port no in /etc/services is changed. Please revert with... (10 Replies)
Discussion started by: RHCE
10 Replies

3. Shell Programming and Scripting

Numerical Decision

I'm tryning to do something like this, I have this file: spaces12tabgoodbye spaces3tabhello I want to copy to another file the lines that have the number above 10... I thought using sort -rn but I don't know how to discard the lines that have the number below 10. Any idea? Thanks (3 Replies)
Discussion started by: pmpx
3 Replies
Login or Register to Ask a Question