5

I have attended to many SOA related sales pitches and presentations through the years. SOA projects have died because of lack of interest or because of grandiose scopes. The very buzzword has lost momentum.

Has someone seen SOA implemented ? Or is it a kind of utopian vision one must strive for ? Do one have to believe in SOA without touching it or having seen it ?

Tulains Córdova
  • 39,201
  • 12
  • 97
  • 154
  • 3
    If you want to be cool, start calling it "Cloud" instead. As a fringe benefit, Cloud is much more vague than SOA, so you can use it even more often! – GlenPeterson Oct 24 '12 at 02:46

2 Answers2

6

My take is that yes, it's a complete buzzword for the following reasons:

1) Too many people equate SOA with only web services.

2) Re-packaged message brokers and other obsolete technologies (visual programming) as "ESBs". Ironically this leads to vendor lock-in and less flexibility because you don't have the source code.

3) No focus on where solutions are appropriate -- maybe FTP is an appropriate method of transfer for data which isn't necessary right away but needs archived, maybe HTTP is too prone to failure (or blocking) and a message-based architecture is more appropriate -- just EVERYTHING IS A WEB SERVICE!

4) Too much focus on re-usability and flexibility makes an architecture sloppy and limp, and takes away from simply solving the problem (or solving the problem simply).

yannis
  • 39,547
  • 40
  • 183
  • 216
Watson
  • 2,262
  • 14
  • 16
  • 1
    +1 for "Too much focus on re-usability and flexibility... takes away from... solving the problem simply." Yeah, I pretty much focus on getting things used *once* then worry about later later. This usually leads to better scalability (due to simplicity) than designing for some imaginary future requirement. – GlenPeterson Oct 24 '12 at 02:45
  • 1
    @GlenPeterson - Agreed -- IHMO this is the same guidance that is or should be given to designing interfaces at any level. You should probably focus on the initial implementation first, then create an interface if you really have multiple (and practical) consumers/implementations of the contract -- this way you can take a measured approach to what actually needs to be abstracted. I believe that development resources are in limited supply in any project and focus should be on solving the business problem first before creating abstractions. – Watson Oct 24 '12 at 15:01
3

Do one have to believe in SOA without touching it or having seen it ?

I think your question is really good one. I personally think that SOA and buzz around it has provided a good momentum for development of related Web API technologies. Just look at O-Data, ASP.NET MVC API and WCF. They are all have some bits and bites of SOA.

As was mentioned, there is a big mis-understanding on what is SOA really is:

enter image description here

As mentioned, SOA have more global meaning than just a web-service. And now: the REST having a big BUZZ wave as well...

Yusubov
  • 21,328
  • 6
  • 45
  • 71