The presentation was pretty light on technical details (just the usual sales pitch about how implementing the massive WebSphere SOA stack - WebSphere Application Server, WebSphere Business Integrator, WebSphere MQ, etc, etc - is easy and will solve all your problems), but what was interesting was some of the common practices of SOA implementations that IBM are pushing:
- Governance. When you want to automate a process part of the automation exercise involves understanding and mapping out your business processes. This can be a challenge to those who have only ever followed the process manually.
- Reuse. Find services that need to be used by multiple business units within your business and implement them as common, shared services instead of every business unit implementing the same service.
- Pushing the work to the customers. If you're going to expose something as a service inside your company, why not go that extra step and expose it externally to your customers? Let them do the work instead of having to employ customer service people to do it for the customer!
So aren't all of these practices just good practice anyway, not specific to SOA? Yes! If you were to implement any of the workflow tools on the market you would have to define your business process anyway. It will save you money to find common services across your business or push work to your customers anyway.
However, if you can use the banner of SOA to justify implementing good practices then I'm all for it!
And that's the word. (Apologies to Stephen Colbert.)