CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Jeffrey Palermo [MVP]

Software management consultant and CTO, Headspring Systems

SOA has not lived up to it's hype - level 200

A quick google search will reveal a raging debate on the merits of SOA.  It has cooled down a bit from 2005 where every time I turned around, there was another session at Tech Ed on SOA.  The talk about SOA has just started if its landscape is going to be anything like the adoption landscape for OOP.  SOA has not lived up to it's hype yet, but to be fair, we have to give it another two decades. 

We don't think about it much, but object-oriented programming began in the 1960's with the Simula language.  Smalltalk helped the movement, but C++ brought object-oriented development into the mainstream in the late '80s when the ANSI group was formed.  From 1962 to 1989, OO was a lot of talk and theory with handfuls of folks implementing real systems using the concepts.  When C++ hit, many more programmers came on board.  Java furthered the adoption of object-oriented concepts, and .Net seems to have pulled the remaining part of the programming market into OO.  When I think about how long it has taken for the average programmer to ackowledge OOP, I wonder if it will take that long for other paradigm shifts.

It remains to be seen if SOA really has the merits granted it by all the marketing hype or if it is just a new name for integration.  We won't really know for at least another decade, I imagine.  Folks have been integrating systems when necessary for years, so it remains to be seen if this new (everything is exposed as a service) strategy works.

I like the way Jeremy Miller puts it:  "The 'if you build it, they will come' approach doesn't work."  I agree.  As with any part in programming, building something with the wish that someone will use it someday doesn't work.  If you are adding a service endpoint to a system out of necessity because someone else need to integrate NOW, then the business value is there, and it's the same kind of integration that has been going on for years.  Some large companies need to integration now, and we see case studies galor: google search.

What we won't find out until many moons from now is if these SOAs worked.  Every project is declared a success immediately after completion, so we can't count on reported results right now.  The true test is if these integrated enterprises are maintainable and cost-effective.  Architects from big companies are saying "yes they are" right now, but no one thinks their child is ugly.




Published Mar 09 2006, 08:02 AM by Jeffrey Palermo
Filed under:

Comments

johnwood said:

Given my blog shows up in the first couple of results I feel obliged to chime in. I think the only reason it's seemingly cooled down is because less people are arguing about its merits. Not because it's not relevant, but simply because a) the arguments have already been hashed out and there's plenty of material to look up if you're unsure what SOA is and b) at least in my experience, the people who used to be arguing against it are now using SOA so there's less people to argue with and less reason to hype it up. :)

I think there is a lot of misinformation about SOA out there. At least, I think the focus is perhaps misplaced. Rockford Lhotka wrote a post last year about 'service oriented design' (http://www.lhotka.net/WeBlog/SomeServiceOrientedDesignThought.aspx), as opposed to SOA. SOD (bit of an unfortunate acronym) looks at SOA from a more theoretical standpoint rather than implementation specifics like XML and SOAP. A lot of people who use transaction scripts as a design pattern, or basically who have been developing exclusively with datasets, are already using many of the concepts in SOD. I think service oriented design is very important because it talks about something that has been somewhat missed - using services internally, rather than simply as a way of integrating disparate systems. In other words developing fine grained, rather than purely coarse grained, services. There are plenty of benefits of using services inside systems, but it deserves a post of its own - hopefully something I'll touch on in the near future.
# March 9, 2006 10:45 AM

Udi Dahan - The Software Simplist said:

Nothing ever lives up to its hype - that's why its called hype.

Is SOA only about integration? Isn't all programming some kind of integration, just at different levels of abstraction?

If you view your system as a System of systems, then I think that SOA has value for you today.
# March 12, 2006 7:48 AM

About Jeffrey Palermo

Jeffrey Palermo is a software management consultant and the CTO of Headspring Systems in Austin, TX. Jeffrey specializes in Agile coaching and helps companies double the productivity of software teams. Jeffrey is an MCSD.Net , Microsoft MVP, Certified Scrummaster, Austin .Net User Group leader, AgileAustin board member, INETA speaker, INETA Membership Mentor, Christian, husband, father, motorcyclist, Eagle Scout, U.S. Army Veteran, and Texas A&M University graduate. Check out Devlicio.us!

This Blog

Syndication