Wednesday, July 02, 2008

CEP and technology maturity

What is Complex Event Processing (CEP) all about? Opher Etzion has compared CEP with an elephant, based on the story of the blind men and the elephant.

As I pointed out in a comment to Opher's post On EP and Analytics, there is an important difference between Opher's elephant and CEP. The elephant exists independently - the problem is one of perception. Whereas CEP only exists as a social construct - as the result of some extremely clever people talking about and innovating around CEP. Ultimately CEP is whatever people agree it to be. And as Tim Bass suggests (On Elephants and Analytics), the sheer size of the elephant may be problematic.

With an immature technology, pundits typically disagree what the technology is "all about". (See my post on Ambiguity.) Once a technology matures, people stop discussing what it is or what it contains; people start taking it for granted (it becomes what Bruno Latour calls a "black box") and simply concentrate on refining it and making it more powerful and efficient. It is not merely because there is more work to be done in CEP that makes CEP immature, as Hans Gilde points out. To the extent that EP is currently immature, maturity will come not when EP becomes more powerful (after all, adolescents can be powerful but immature) but when it becomes stable. (Some extremely useful technological innovations never reach this stage.)

There is often an uncertain relationship between the commercially available products and the underlying technology. Database purists used to argue that commercially available databases didn't conform with all the details of Ted Codd's relational theory. But that discrepancy could be interpreted in two ways - did it mean that commercial databases were immature, or that the theory was immature?

Meanwhile, some vendors have been insisting that EP/CEP is mature, based on evidence that many organizations have adopted and successfully used the available products. For example, Jack Rusher (Aleri) argues that "real work is getting done, bugs in the field are few, and business value is being added", while Mark Palmer (StreamBase) argues from the expanding use and public disclosure of CEP applications that "CEP is robust and maturing and reliable".

But I see these as signs of the (increasing) maturity of the usage of CEP, not of the maturity of CEP itself, or for that matter the maturity of the underlying technology. The use-context is not the product, and the product is not the technology.

See also

1 comment:

Hans said...

Agreed that it comes down to the kind of maturity you're talking about.

So in terms of signals of maturity, you are looking for consensus in terms of the features that are/should be supported as well as consensus on how the technology should be applied to common situations?