Recently I encountered two potential clients, in the midst of selecting business rules support software for high volume transaction processing, who were actively considering a continuous event processing (CEP) platform as an alternative to a BRMS. Given that business stewardship of their business rules (as opposed to rules managed exclusively by their IT department) was a goal of both projects – were they right to consider CEP? I do not think so.
Occasionally the event processing requirements will mandate the sophistication of a CEP, but frequently they do not. In the latter cases a BRMS is a better solution. Find our what happened to the project who chose the CEP platform.
It has been a busy 18 months, we have been inundated with financial institutions clambering to adopt business rules, mainly in response to an anticipated rise in regulatory and compliance complexity. Two potential clients of the last few years, instigating projects over a year apart, are of special interest to this post because of their similarity. Although requiring help in different aspects of their business (one in accounting and the other in transaction processing), both:
- Needed to externalise the business logic, previously embedded in their IT systems, for agile control by their business SMEs
- Had moderately high volume processing demands (in excess of 10 million business events per hour)
- Were processing complex business events (i.e. those requiring rendez-vous prior to processing)
- Required assistance in identifying a product that could do this and integrating it within their finance architecture
Both sought our opinion: should they adopt a traditional BRMS (Business Rule Management System) or a complex event processor (CEP) platform?
What is CEP?
A quick explanation here: by complex events, I do not mean events of high internal complexity. Complex events are composite: they consist of multiple sub-events that are received at different times. They are needed in systems where a single event cannot always be processed in isolation. A complex event is said to occur when a set of correlated sub-events are received. In other words, complex events are caused by the rendez-vous of simpler ones. Complications like sliding windows, pattern recognition and deadlines can make matters more challenging. A CEP platform (like Drools Fusion or Tibco CEP) caters for these complexities.
Drawn to the high volume processing speeds of the CEP platform and the fact that they already held an enterprise license for a well known CEP platform, one client eventually selected this platform, against our advice and the recommendations of many of their own IT architects. The other client chose the BRMS approach with considerable success. A year later I caught up with the CEP user to find out how their project had fared…
It was a sorry story. CEP platforms are (unlike BRMS) not yet well suited for use by business SMEs. The configuration of CEP platforms does not cater for natural language rules. Instead the rules are expressed in spreadsheets and a language somewhat like Java. The business model is also specified in a highly technical manner. The project analysts had faithfully captured accounting requirements and expressed them in this technical language. The platform had been installed, integrated with the client’s infrastructure and a prototype of the accounting rules had been deployed. But the entire project had lost its business stewardship, the business SMEs had no interaction with the rules and no ability to alter them. The agility of the accounting policy, a key business driver for the project, had been lost. Every change of policy now requires involvement by the IT group.
This lost opportunity was compounded by the fact that the expression of the accounting policy was so arcane (and so richly peppered with complex CEP functionality) that even its authors have now lost the understanding of how it works. A recent review by the client’s operations group concluded that the accounting policy asset, obfuscated by its highly technical representation, had effectively been lost!
The moral of this story is that, unless you really require the rendez-vous sophistication of CEP platforms, do not use them to express business rules unless you are confident that these will never need to be directly accessed by the business.