vincent
Fri, 28 Mar 2008 18:30:58 +0000
There is increasing hope for a conceptual “IT supercollision” around the corner. From
Business Architecture and
Business Modeling, via
Model-Driven Engineering and its mappings to
BPM (primarily for human-oriented workflow) and
Business Rules (primarily for decision automation), with an underlying
SOA infrastructure of flexible re-usable services, with
EDA from various systems being processed through
CEP (for straight-through processing and
BAM as well as real-time BI and analytics), software technologies just “seem” to be coming together.
One example of this view is Michael Dortch from BPM In Action:
blogging on what he calls the “big mash-up”. I liked Michael’s
comment on business core needs as 2 points:
1: The ability to base every business action, decision, and process on the most accurate, consistent, secure, and timely information available, without fail.
2: The ability to answer the “Journalism 101” questions about that information - who's using what, when, where, why, and how - accurately and completely, on demand at any time.
The first need points to BPM (for human-oriented or workflow processing) and CEP (for timely a.k.a. event-driven decisions and processes). The second points to BAM and “situation assessment” - these also probably utilizing CEP, as well as things like
MDM and
BI. And, of course, you drive the development of processes and rules in 1. from the results of 2.
Where we might disagree with Michael (and not suprisingly, as his view is primarily BPM-focussed), is when he says “
even if you could build an EDA or an SOA without BPM, I'm not sure I'd want to see the results.” Now BPM is “event driven” (usually in terms of orchestrated workflows) and represents simple/singleton event processing, but EDAs are usually associated with straight-through-processing or monitoring of events in an automated fashion, for which CEP may be more appropriate. And BPM features like
BPMN (with its current semantics) do not apply to event processing technologies like CEP. I
could use BPM to determine which events get processed automatically in a CEP system, but in reality the real-time nature of most events means that I am far more likely to do things the other way round. In other words, use CEP to determine which events / identify the appropriate “complex events” that get processed manually by BPM or in particular processes. In other words,
use CEP as a preprocessor to BPM.
So we’d probably reword Michael’s statement as: “
even if you can build BPM without an EDA or an SOA, I'm not sure it would be complete.”
Source...