Vodafone 360 mobile internet app store
… has been launched (video here). The “internet service gateway” part of this is powered by TIBCO BusinessEvents. Congratulations to Vodafone team on the launch of its latest service!
… has been launched (video here). The “internet service gateway” part of this is powered by TIBCO BusinessEvents. Congratulations to Vodafone team on the launch of its latest service!
Opher Etzion recorded some action items for the Event Processing Technical Society at the EPTS5 symposium last week. One of these was “promotion of EPTS” as the go-to resource for event processing information (hence the irony that these action items are duly listed on Opher’s blog and not anywhere on the EPTS web site).
One of these was the idea of an ROI Working Group to share and propagate ROI stories (this being a safe activity for vendors to share as customers seeing ROI will not likely be poachable by other vendors!). But how should ROI be measured and reported?
Coincidentally a colleague just mentioned an airline customer who just went live with a new track-and-trace CEP application - an application with an estimated €2M per year payback.
Some observations here:
Another coincidence: I was just listening to Paul Coby, CIO of BA, talking about the need for lean and agile approaches in the airline industry, at IRMUK’s BPM2009. His message was ‘there are no IT projects, only business projects’ - all with business goals and KPIs to be measured. Model-driven CEP applications like the airline use case above certainly qualify as lean and agile… I wonder if BA is exploiting CEP like its competitors are?
A customer was asking about methodologies around business rules, which was also the topic of a recent LinkedIn discussion started by Paul Harmon of BPTrends (who is apparently extending his BPM methodology to rules). Some general thoughts on methodologies below:
What am I trying to achieve?
What is the generic approach to identifying / specifying business rules?
The generic approach is:
(a) Identify the business entities being processed
(b) Identify associated states
(c) Identify the associated events
(d) Identify business rules against entity / state / event
What about “business rules” in the widest sense: rules about the business for the business?
The above comments apply to the common-use of “business rule” relating to rules and decisions in processes, possibly automated (e.g. in rule engines, with the relevant OMG standard being PRR), and possibly as a part of complex event processing.
For the wider definition of business rules, defining business rules as constraints against the business and documented as a business asset (relevant OMG standard being BMM and SBVR) there are additional steps, usually via some controlled business ontology or vocabulary:
(a2) Identify declarative business rule statements that associate entities with each other
(d) Map business rule statements to associated entity / state / event occurrences to enforce the business rules in particular processes.
What are the main published methodologies?
There are 2 main providers of methodologies (outside of particular rule vendors’ thoughts … ):
i. Barbara von Halle @ KPI: the main reference remains Business Rules Applied and associated methodology although unfortunately this has not been updated (for example, it predates the concept of CEP and indeed TIBCO as the ~3rd largest rule engine vendor). KPI also have a new book about to be released covering more of a decision model approach.
ii. Ron Ross @ BRSolutions: business rule documentation focus - the main book is Business Rule Concepts which is uptodate and covers mostly the wider definition of business rules, but does relate how these map to automatable rules (and events).
iii. For simpler requirements gathering, the (very) basic separation of business rules from use cases is often covered in Use Case books.
How do these apply to CEP?
Part (d) of the generic approach is obviously far more important in pure event processing. The identification of what filters (to events, payloads etc), what patterns (including patterns on streams as well as individual events, and across data combined with events), and combinations thereof are required to identify a complex event effectively requires its own methodology, which we can cover separately.
UK retailer Carphone Warehouse was in the news recently, announcing their transition to a TIBCO-based CRM system - in this case conventional workflows augmented by event- and rule-driven processes.
This use case has a good write-up (via MWD) available from TIBCO’s web site: some choice quotes are:
Background:
The Carphone Warehouse is a European telecommunications retailing and service provision group, based in the UK. The company is large, and has a record of fast growth: in its last financial year it reported revenues of over £3.9bn, but is still growing over 30% year-on-year. It currently employs around 20,000 staff in eleven markets. As its name implies, the company was founded as a mobile phone retailer. …
As is the case for so many large organisations, there came a point where the weight of “legacy” functionality became effectively unmaintainable in the face of continuing business change … as a result, The Carphone Warehouse decided that as well as implementing a new billing system, it would also implement a new, distinct and separate CRM system. …
A service-oriented approach to implementing the renewed billing capability and integrating it with the new CRM capability was identified and promoted early on … TIBCO products (Enterprise Messaging System and BusinessWorks) were selected for the SOA infrastructure … initially [the chosen CRM vendor's] inbuilt workflow functionality was selected as the platform for this. However as the project unfolded, the importance of long-running processes, and asynchronous event-based flows … became increasingly apparent. It was at this point that the project team decided to extend The Carphone Warehouse’s investment in TIBCO technology to include the iProcess Suite (TIBCO’s BPM technology offering) and BusinessEvents (TIBCO’s Complex Event Processing offering).
Implementation:
The processes currently being implemented in the billing/CRM replacement implementation are focused on automating broadband service provisioning, and are prime examples of our “straight through processing” scenario …
The Carphone Warehouse is using TIBCO’s iProcess technologies to define and coordinate long running, stateful, system-to-system integrations; it’s using TIBCO’s BusinessEvents technology to handle other stateful interactions, where there’s a need for near-real-time processing. …
Results:
…There’s already been one major success from this approach. In its retail business, the team has used the iProcess technology to deliver a reusable telecoms service activation process which has enabled the company to progress business expansion across Europe much more broadly and quickly than anticipated. The implementation cost just 20% of the original estimate, and the reduced cost for retail operations “in territory” has made it much easier to roll out new network deals and offers.
Note: Carphone Warehouse are no doubt using TIBCO BusinessStudio to develop iProcess applications - so now is a good time to mention that BusinessStudio 3.2.0 is now shipping. Although this doesn’t cover CEP (or CEP-driven BPM), it does now include some iProcess Conductor (Gantt-based goal-driven BPM) features…
Water’s had an article a few weeks ago titled “Quantum Leap” about BNP Paribas. Now, BNP Paribas happen to be a TIBCO event processing customer, and TIBCO’s CEP group is internally called “Quantum Leap”, so one might naturally infer that this was a use case study on their use of TIBCO event processing.
But unfortunately it isn’t.
But it is still very interesting, and potentially very relevant to Complex Event Processing. The story talks about how BNP Paribas reworked some internal applications to exploit common off-the-shelf video accelerator boards - which, are effectively miniature high performance parallel-processing supercomputers. Just the sort of thing you might need for certain types of event stream processing, one would think… and would probably work very nicely inside an ActiveSpaces node…