SOA: It’s not about Technology
On Thursday last week I had a conversation about SOA with one of our business strategists. While I, as a technician, has a more IT-centric view on SOA, he tried to convince me, that technology has almost nothing to do with it.
Here is what he said (reconstructed from memory):
Don’t talk about SOA unless you know for sure that you’ll benefit from it. Try to find out what problems the business is facing and where/if SOA addresses these problems. If it doesn’t, then you’re wasting your time; a fact which is probably true for a large number of business considering to implement SOA just to stay on top of the edge.
To me, SOA should be far more about business transformation and designing enterprise applications around the business user’s needs rather than applications or databases. It’s about delivering business processes, not implementing COTS. It’s about bringing together all the pieces of the enterprise without requiring you to re-develop the apps. (my 0.02$: wishful thinking).
I’m constantly frustrated by the excessive focus on the technology of SOA at the expense of the real potential of SOA to transform the way a company does business. And, almost all SOA projects come from the IT department and just talk about the technical/infrastructure pieces.
Don’t push business process automation when 75% of the legacy enterprise apps aren’t web-enabled. In these cases, SOA’s primary benefit is to web-enable (via web services) and integrate this legacy functionality into their larger enterprise business processes. (Ok, that’s not really SOA, but it’s a critical first step to doing anything with SOA).
If they’re already fairly web-friendly, then SOA is more about transforming an enterprise from an application or data focus to a customer-centric/service focus. In many businesses, this change can be profound. (my 0.02$: only true for businesses that are customer-/service-centric already).
The change is the difference between business users checking individual warehouse’s inventory stats and delivery schedules versus just asking ‘How fast can I get this part to Phoenix, AZ?’ Answering that question may require accessing dozens of systems and performing some calculations, but the focus is on delivering what the user needs not just all the data you have. (my 0.02$: this is all but new, that’s what business have done for years, SOA does not change anything).
Don’t talk about automated business processes or dynamic discovery. Focus on business optimization and flexibility.
SOA is all about business and understanding what the user needs and giving it to them. It’s not about WSDLs, ESBs, Registries, or SOAP, although those are key factors behind the scenes.
The final question I have then is: What are the so called SOA vendors (IBM, Bea, Software AG, to name a few) are trying to sell us?
