Bill Swanton and Ian Finley at AMR Research recently published "SOA and BPM for Enterprise Applications: A Dose of Reality" (subscription required). This paper considered the value of service-oriented architecture (SOA) and how it is to be found in business process management. In particular, for users of enterprise applications, the paper discussed how BPM can create unique and differentiating business processes on top of the same software that competitors use. While I liked the paper, and really liked the approach they took of providing vendors with a scenario and asking how they would address it, I do have some comments on the paper as it relates to decisioning.
- They talk about adding differentiation through processes but differentiation through decision automation can resist the commoditization of processes not by changing processes but by adding custom decisions to standard processes
- In their scenario they talk about receiving an order from a "good customer" and about a "feasible schedule" but how to decide what those are? These decisions must be automated too if the process is to be effective and to pretend that these are simply diamonds in a process flow is to understate their potential complexity. In particular, one could imagine that the definition of a good customer could change often.
- When the scenario talks about BAM it is not clear what they expect managers to be able to do if they see something wrong. Clearly they could intervene in a single instance but wouldn't they also want to be able to make a change that would prevent a problem they see developing? Wouldn't they want to put their performance management into action?
- Their list of roles was interesting though I think it failed to consider the unique need for business owners and analysts to control rules in services (decision services) built by service developers according to an overall architecture. Indeed Bruce Silver had a nice post on how BPMS vendors could improve their products by using such an approach.
- When considering the services available and required, I find that these decision services are often critical. They will often be what business users want to add and they change all the time. Building these services so that they are ready for change-time requires business rules and a focus on decisions.
- I agree wholeheartedly with them that collaboration is important in developing new processes and it is also important in managing rules
- When considering different approaches to linking SOA and BPM, they might want to consider how business rules management systems do this with templates. A template allows a developer or architect to restrict the kind of rules a business user can create or modify but still allows those business users to manage the rules. Bruce Silver had a great post on how BPMS vendors could learn from BRMS vendors and doing this is one of the secrets of getting business users to maintain their own systems.
- Although a rules engine is identified as part of the need for a business process environment, think this is limiting. nothing about analytics, nothing about decision or rule management and too limiting to consider rules only as part of a process. Decision services can also drive an EA directly. That said their definition of a rules engine did focus on decisions, although it still lacked any focus on analytics (which can add value to business rules)
- One of the challenges for enterprise applications is that they tend to be fairly "dumb" but decisions can be used to make them much smarter. Indeed if only 5% of business is unique, is it all decisining?
Technorati Tags: agility, analytics, BPM, BPMS, BRMS, business process, business rules, change time, decision service, EDM, enterprise decision management, predictive analytics, SOA, enterprise application