SOA – Service Oriented Architecture or Snake Oil Architecure

I thought I should post on what I think about Service Oriented Architecture (SOA), the most hyped-about term in the enterprise these days. I recently posted an answer on this topic on Linkedin also.
Service Oriented Architecture is an Enterprise Framework, which if implemented correctly, can act as an enterprise refactoring tool. Once your core business services are identified and implemented, you can then use these services to create new business processes without much pain.
Service Oriented Architecture (SOA) is a way of designing a software system that can provide discrete services to either end-user-applications or other services through published and discoverable interfaces. It is an architecture that breaks traditional applications into multiple fully functional coarse-grained services that work together to support a business process. New applications, thus built to consume these core-services, are termed as SOA Applications.
The Myth: Too much of the press about SOA makes it look like it’s the best thing since punched cards. Furthermore, if you follow many of these pitches, it appears that you can do so with hardly any pain: just scrape your existing assets, plant services here, there, and younder, wire them together and suddenly you’ll be virtualized, automatized, and servicized …
The Real Fact: SOA is, first and foremost, about the A part of the acronym (architecture). Organizations who already have a solid approach to architecture will likely do reasonably well with SOA; organizations who already have a broken architecture and/or a broken architectural governance practice will likely fail with SOA and then blame SOA on all their problems.
Key Points:
1. Clear abstractions, separations of concerns and all the usual fundamentals of architecture – the ‘A’ part of SOA.
2. Flawed Bottom-up approach: look at a system, identify potential services, publish them and weave them together <essence of technology, first>
3. Start with scenarios, business needs, and play those out against the current system, zero in on the points of tangency, and then plan a flag for harvesting meaningful service.

Leave a Reply