Complex Event Processing and Service Oriented Architecture (SOA)
By TMCnet Special Guest
A new class of event-driven applications is emerging to address business challenges in fraud prevention, risk management, compliance verification, customer service, customer acquisition, cross-sell and more.
These applications involve processes that are typically unpredictably non-linear (their timing and sequence cannot be defined in advance), dynamic (their characteristics change quite frequently), and continuously influenced by outside events (they can quickly mutate in response to real-time external activity).
For a variety of reasons explored in my last article, today’s limited specification of service oriented architectures (SOAs) cannot accommodate these requirements. Rather, they require a new technology platform that fits inside an SOA, extending and enhancing it: Complex Event Processing (CEP).
Traditionally, architects faced with application design looked at SOA technologies such as business process management (BPM), business rules engine (BRE), and business activity monitoring (BAM) tools. These tools, however, are best suited to problems where the process steps are linear and predictable and don’t require contextual information about timing and sequence of event patterns.
With processes that are unpredictably non-linear, dynamic, and continuously influenced by outside events, the precise process path cannot be known in advance because the process itself has multiple starting and ending points, is constantly changing, and can be influenced by activity that is not defined within the process and not known until execution time.
For example, late flights may drastically change the routine operation of baggage handling (everything from arrival gate locations to crew staffing assignments), making the advance modeling of a linear process meaningless. CEP excels at executing this type of process.
CEP is an emerging technology uniquely suited to solving a new class of business problems found in multiple industries. CEP enables the automated detection and understanding of often subtle and shifting patterns of human and system activity flowing through an IT infrastructure as well as the orchestration of timely responses.
While CEP includes functionality that seems similar to the more traditional tools listed above, when used by a platform for designing and executing event-driven processes, this functionality supports a larger capability that goes far beyond what they can do to address these new types of business problems.
CEP was first developed at Stanford University by David Luckham in the late 1990s under a DARPA grant. Initially, the work was focused on developing a system that could detect patterns of activity on IT networks that indicated attempts at intrusion and, upon detection, trigger automated countermeasures.
When implemented inside an SOA, CEP extends and enhances it to cover event-driven applications and hybrid applications involving events and services. First, CEP capabilities augment the ability to orchestrate services by enabling event-pattern triggers. So rather than simply being called sequentially, services can be called based on complex patterns of system and human activity.
Second, CEP technology includes functionality to allow services to generate events, something they don’t natively do. This provides extremely powerful capabilities when building application that involve both event-pattern trigger AND sequential process management, such as IT security.
In a typical IT security application, a complex pattern of events may trigger the opening of a “case” for investigation. This case follows a predictable, sequential pattern of approval and escalation and is ideal for standard process flow. When this is enhanced with the event correlation features of CEP in identifying suspect patterns, a more complete SOA platform emerges with superior capabilities.
While not always apparent at first glance, such applications exist in all industries and in most domains of business (business is, after all, basically event-driven). CEP, when implemented as part of an SOA, helps extend the hype of SOA to the real world.
Several organizations have successfully implemented CEP as part of an SOA and seen not only functional improvements to the applications, but improvements to the application development and maintenance process itself. Stay tuned for examples in my next article.
Coming Next: CEP Applied -- Two Case Studies.
David Cameron, Vice President of Product Integration at AptSoft Corporation, writes and speaks regularly about the intelligent application of technology to address business challenges. He can be reached at email@example.com.