A recent Zapthink piece on pragmatic SOA made me think of pragmatic decision services in this context. Taking four of their pragmatic areas I had a few thoughts:
-
Pragmatic Reuse
If you are focused on pragmatic reuse you might want to consider decision services. One of the attractive features of a rules-based decision service is that reuse is possible not just at the service level but also in terms of rules within the decision service. Business rules management systems allow you to reuse rules between services and this can be a very effective way to get reuse. Indeed, many BRMS also allow you to push rules into non-service oriented environments allowing reuse between SOA and non-SOA components. -
Pragmatic Legacy Enablement
Jason made the point that only 20% of a legacy application might be worth service-enabling. My experience is that not only is only 20% worth making into a service but this is likely to be a decision service. The 20% is likely to be rich in business logic and decision-centric. It is also likely to be the 20% you have to maintain aggressively - if it was not changing it is probably pure legacy code that can and should be left as it was. Decision services and business rules can effectively manage application evolution. -
Pragmatic SOBAs
Jason discusses Service-Oriented Business Applications and that they are only valuable for some processes. I agree and would again point out that some processes can be made agile and precise by embedding a decision service into an otherwise non-service enabled process to build decision agility. -
Pragmatic User Empowerment
Business rules allow a business user to maintain the key decision logic in a process. Often that is the only part of a process that changes often and so a complete SOBA rewrite is not worthwhile but empowering business management of the critical decisions might well be.
Decision Services and business rules to build them with can be an effective but pragmatic approach.
Technorati Tags: BRMS, business agility, business rules, decision service, SOA, Zapthink










Leave a comment