Wednesday, January 07, 2009

Complexity Kills: SOA = CORBA 2.0 = DOA

Anne Thomas Manes of the Burton Group has declared the death of Service Oriented Architectures (SOA). Like CORBA before it, SOA was a vendor-driven "market" of daunting complexity. Also like CORBA before it, SOA collapsed under the weight of its own learning curve.

I attended the Gartner architecture conference last month, where 1,000 corporate architects gathered to discuss the state of SOA. The conversation was dominated by architects quizzing each other on what SOA really meant and whether any of them had really implemented it yet. That is scary for a technology that is long in the tooth from a buzz cycle perspective.

There was exactly 1 presentation I saw that presented a strong business case for the SOA architecture. That was by the CIO of National City Bank, which was recently bought by PNC and whose SOA architecture may or may not survive the acquisition.

Anne Thomas Manes also points out that while the heavyweight SOA architecture is falling out of favor, lightweight architectures based on SaaS and cloud services are on the rise. WaveMaker and other platform as a service (PaaS) vendors are delivering increased flexibility and productivity without the huge upfront investment of SOA.

Here is why SOA died and how the more flexible cloud services approach is winning:
  1. SOA blew the elevator pitch. Just explaining what SOA is takes longer than the average business manager's attention span. Like spinach, business sponsors are assured that SOA is "good for you." In contrast, the value of building cloud-based apps that work like Facebook and iGoogle is easy to convey, because business sponsors (or their kids) use useful web apps all the time.
  2. SOA was more about vendor enrichment than customer enrichment. I would argue that the SOA market was driven by the need for application server vendors to find add-on products that they could charge for once JBoss and Spring took the money out of the core app server market. In contrast, cloud services are growing organically as companies like SalesForce and WaveMaker make cloud development tools available that enable architects to build business applications based on best practices drawn from successful consumer sites like gmail and facebook.
  3. SOA swims against the tide of IT democratization. In retrospect, many companies that adopted SOA did so as a way for core IT to maintain control over every single computing event that occurs within an enterprise. In contrast, SaaS and cloud computing break the IT monopoly on compute cycles and deliver compelling cost and time to market benefits to the business.
Just as with CORBA, SOA introduced some useful concepts around enterprise integration and service reuse. However, just as Web 1.0 killed CORBA by introducing a much easier way to distribute applications, Web 2.0 has killed SOA with a much easier way to integrate web services.


Jonathan Allen said...

SOA isn't complex, its vapor ware. There is no SOA platform, it is just a term you can apply to anything that involves one computer communicating with another.

This means SOA will live on, attaching itself to anything labeled Cloud computing.

Anonymous said...

Jonathan is somewhat wrong: see the plethora of WS-* BS specs floating around.

I argue SOA was DOA (dead on arrival). It was a solution in search of a problem - big corps trying to outmuscle the web (HTTP/SSL).

Fortunately, SOA also played a part in killing off the "turn-everything-into-XML" meme too. No, turning a 5kb text file into 156kb of XML is not simpler.

Good riddance to both!

Anonymous said...

The whole industry is just a bunch of companies trying to chase the latest Gartner "magic quadrant."

Middleware is a cesspool of re-innovation... instead of companies competing with an established technology set, they try and shift the "next big thing" to where Gartner is saying the market is moving.

As BEA successfully shifted the middleware integration play from CORBA to J2EE (because their attempt at an OTS failed) by buying WebLogic and happily taking Sun's marketing dollars, you then had a number of companies trying to shift the market to Web Services because BEA and IBM owned the J2EE market. And then the next big wave was SOA, but it's all just technobabble that's way more "pie in the sky" than real implementations.

Heck, people that want to actually solve the problems of integration would probably use something like ICE, which has all the benefits of CORBA without the downsides of a political standards board. And of course people who think analysts are idiots ;-)

Christopher Keene said...

@Jonathan - I don't think SOA is vapor, certainly not the ESB part of it. The bigger problem is its complexity, which almost guarantees that it won't live up to it's promise/hype, which gives it a reputation for vaporish-ness.

I think the move to cloud computing corresponds to a move towards more lightweight cloud services like REST. SOA will certainly try to hitch a ride, but I think it will have far less influence in that market.

Chui said...

The main problem is ADD among technologists. If Boeing threw away 10 years of development every decade and started from a scratch with a "simpler" model, it would get nowhere. The airports would get nowhere. People would get nowhere.

Just because we are dealing with electrons doesn't mean there isn't a cost in terms of subverting established infrastructure.

Luckily, operating systems (Unix and Windows) don't change flavours every decade. Look where that got us.

steve said...

Nice informative & very useful blog.
Web 2.0 is transforming the Internet into an even more powerful tool for businesses seeking to leverage technology to drive revenue.In order to effectively compete and meet the growing demands of today's more sophisticated customer, businesses are fanatically seeking to upgrade their web sites with features that enhance the user experience and deliver a measurable ROI from their marketing dollars. Businesses will focus on shifting their web sites from isolated, static information based destinations to highly functional platforms serving powerful web applications to end users that emphasize online collaboration, sharing, interaction and learning.
Didier Grossemy Blog | Didier Grossemy On Linkedin| Didier Grossemy Profile

Anonymous said...

All these new systems reimplement the corba wheel poorly, they all end up making a new corba with the same features.

The only reason some of these systems persist is because they are open. CORBA although a standard, was not. OSS implementations of CORBA were substandard and primitive. Every good corba implementation was proprietary and cost money.

CORBA died of proprietization.

Anonymous said...

This article is just a bunch of dribble. CORBA attached itself via IIOP to RMI and lives on. Most good technologies are useful for something and where would cloud computing be without SOAP, WSDL, REST.