Thu, 29 Nov 2007 00:19:04 +0000
A recent Infoworld advertorial [*1] had an interesting box (see pg 14) indicating that “Second Generation SOA” is about Event Driven Architecture, Complex Event Processing, Business Activity Monitoring and Enhanced BPM Development. This idea was somewhat orphaned from the text (probably the sponsors didn’t want to push this idea much, for some reason ) but nontheless its an interesting idea.
SOA gives the ability to specify services that can be used synchronously or asynchronously. They will tend to be orchestrated as part of a BPM process; more complex services may require a specific event-driven choreography . Some advanced SOA architectures even give you features like service virtualization. But for the most part, SOA is associated with BPM and sequential human-oriented procedural services. One of the themes of the CEP industry is that IT systems don’t need to work like that, especially for large-scale real-time automation tasks where necessarily the human-is-not-in-the-loop. This is where EDA and CEP come into play, dealing with asynchronous and complex events and their associated patterns. One use case for this is obviously Business Activity Monitoring (keeping track, automatically, of the relevant Key Performance Indicators or KPIs).
The 4th bullet, “Enhanced BPM Development”, isn’t really explained. Obviously, having services available in your BPM tool for development purposes, and orchestrating services in processes using BPMN, is a very reasonable (and common) practice. But even here there is an event-slant, with event-driven dynamic processes using both CEP and BPM possible.
The conclusion? Even advertorials have snippets of wisdom! 
 Disclaimer: not TIBCO sponsored. Other vendors like Oracle, BEA and Progress commented in the article on EDA and occasionally CEP, but their ads placed alongside told a different story - none mentioned events, EDA or CEP.
 Choreography is about enforcing certain service-event patterns before delivering a service. In other words, its about handling composite events and is therefore a CEP use case.
 There are still a few clangers here: one favorite of mine was, in a section on BPEL, “A business process engine will actually allow a businessperson to view the whole business from a much more higher level and abstract point of view.” The thought of business people reading BPEL, or a BPEL *engine* having anything to do with service or process visualization, is an interesting one…