Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Contrary Opinion: "SOA Has Its Limitations"
Contrary Opinion: "SOA Has Its Limitations"

SOA is certainly a neat concept - wherein the abstractions are taken yet another layer upwards with the location of the 'service' unknown and inconsequential to the 'user' of the service.

While the concept is good, the hype going around is unbelievable. SOA is not like a new language or even a runtime environment on which complete applications can be built. All said and done, SOA is just an invocation mechanism!

The notion of abstracting functionality with interfaces is not exactly new - it has been around as a good principle for application modularization, especially in the OOP arena (though implementations were possible even in C days). Now when abstracting functionality with interfaces, one good consideration is the granularity. The coarser the granularity, the easier and better is the reuse.

SOA builds on the same basic principle. Only that now the 'implementation' of the service is completely hidden - and could be in the same process, same system, a different system, or actually anywhere on the network. The plumbing layer provided by the infrastructure abstracts the complexity of access (be it via JMS or SOAP or Web servces or any other mechanism. Including rapidly-becoming-legacy such as RMI or CORBA or DCOM).

Now, the irony is that SOA is being hyped so much, that this is the coolest thing happening to software systems design. Hype that at least the major vendors like IBM, BEA, and Microsoft are trying to create - with a lukewarm response from the community.

So, come off it! SOA is just a invocation mechanism. Much like any RPC (simple Dec-RPC or the more evolved RMI or CORBA). The hype is akin to saying "I am building a complete banking solution using TCP/IP."

While service orientation is surely an important design consideration, it is not a complete systems-design framework.

And more importantly, with SOA implictly assuming 'distribution,' this is yet another area of serious limitation. One cannot distribute ALL functionality in an application. Only corase grained functionality with minimal interactions can be distributed. More dense functionality has to be co-located for performance. For now atleast - until network performance improves much more than it is today. Right now even the DB calls from a middle-tier server on a hi-performance backplane can hurt performance. Imagine dense requests (between 'services') going via a fat-slow-pipe of, say, SOAP-over-http.

If coarse granularity is a given with SOA, then the dense functionality implemented by a 'coarse' service is the actual business logic implementation. And this is entirely independent of SOA - it has to be done using other technologies such as J2EE or .NET.

Realistically, the actual possibility of SOA is only between independent systems. Each system may be implemented using any of the technologies available today (proprietary environments suich as SAP, BAAN, or standard environments such as J2EE or .NET or any other legacy environments). Come to think of it, this isn't exactly bleeding-edge discovery. Discrete systems talking to each other using EDI-like techniques have been around for decades. SOA doesn't address too many opportunities beyond what EDI was already addressing. So instead of EDI-like mechanisms (for intra-company interactions or inter-company interactions), one could choose Web-services based SOA.

When it comes to new systems (being designed ground up), while SOA has to be factored in into the overall system design, the limitations posed on performance due to distribution will be a limiting factor for service orientation, limiting its utility. SOA is good only for interactions of logically 'separate' systems. And not for designing and implementing any and every system.

About Ramesh Loganathan
Ramesh LoganathAN HAS 15 years' Systems engineering and R&D management experience in technology-intensive product development organizations including Pramati Technologies (VP, Engineering) and Informix (Principal Engineer). An accomplished technologist and an effective technology evangelist, he speaks regularly at workshops and seminars. Active in the JCP and SPEC organizations, he is a member of several Standards Expert groups including J2EE 1.3, and is a Founding Member of ebXMLIndia.org.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

I absolutely agree with this article. SOA is antoher over-hyped "word". It all comes down to granularity. The further you are from the object, the coarser(thru facades) you need to be. Another word for SOA is Facade. You provide an ''untrusted'' system with a coarse interface to communicate with your service. Big deal! I can even right now come up with another even coarser interface that goes on top of my "SOA Interface" for a heavier process.. and the shells around my object grow further and further..

Ramesh and Ashok are both right. Ramesh reminds us that there will be a need for tightly coupled traditional code behind coarse grained services for a long time yet. After all you would not build an air traffic control system with internal SOAP messaging. Ashok correctly points out the massive benefits of re-use and integration to be achieved by the standardization effort behind SOA.

When railway gauges were first standardized ROI was improved but many good locomotives were still built with proprietary machine interfaces. Over time even locomotive parts and interfaces become standardised. Clayton Christensen, who invented the concept of the innovators dilemma, points out that industrial progress involves breaking up "black boxes" into smaller black boxes with standard interfaces, driven by performance increases and technology commmoditization. This will happen to OOP software as SOA slowly penetrates, but bandwidth and performance issues will make it a long process.

The SOA hype is caused by the old hammer and nail problem. Vendors with a new SOA hammer and no OOP screwdriver will naturally characterise all problems as nails and OOP vendors will see nothing but screws.

The current capabilities of SOA have been correctly summarized by Ramesh. While technically, SOA is simply an evolution in the way we use computing and communication cycles, they harbour the seeds of monumental change yet again, as did the internet before.

What is important about these capabilities is not that we can today begin to build distributed systems focused on SOA messaging, but the model implicit in the loosely coupled and standardized access to distributed coarse functionality.

This has 3 benefits :

1. Improved ROIs and NPVs based on reduction in the risks (and the concommitant reduction in risk-adjusted discounting of future cash flows). The flexibility afforded by interoperability implicit in XSDing interfaces and XSLTing messages extend the life of systems (a-la-mainframe-legacies, etc). Keeping alive, or extending the lives of systems, to beneficially accrue future cash flows should favorably impact business cases and investment decisions.

2. Cost of interoperability and integration is dramatically reduced as extensibility and lose coupling facilitates easier enhancements and modifications of systems functionality (some overlap with 1 above). No longer do we need a big bang deployment and implementation that "gets it right" the first time. Over time, development methodologies based on xml payloads and xsd schemas will afford iterative designs and builds.

3. As standards and protocols, both dejure and defacto, find increasing traction, and as the costs of computing and communications cycles continue to drop even as performance increases, we can expect to see this "standards space" in between proprietary and black-box solutions begin to increasingly leverage distributed services. The important point is we have begun to cut through the dense brush of binary opaqueness to build the "standards space" bridges that will help us architect composite business functions and capabilities fashioned from creative individual solutions. Whether you build business functions/capabilities using Java or .Net (or other tools in the future) will become increasingly irrelevant.

Then there are the benefits, unforeseeable today, that might accrue from the higher-level standards stacks being built on the core xml technologies platform, including those for business processes, portals, etc. These standards pathways and bridges should some day allow us to wander around those vast web spaces and interact with all those wild and wonderful services waiting to be built, and integrate them into our business processes or portals on the fly.

Welcome to the world of losely coupled services!

FWIW...my two bits and three cheers for standards-based SOAs.


Your Feedback
Tha''er Zayed wrote: I absolutely agree with this article. SOA is antoher over-hyped "word". It all comes down to granularity. The further you are from the object, the coarser(thru facades) you need to be. Another word for SOA is Facade. You provide an ''untrusted'' system with a coarse interface to communicate with your service. Big deal! I can even right now come up with another even coarser interface that goes on top of my "SOA Interface" for a heavier process.. and the shells around my object grow further and further..
David Doust wrote: Ramesh and Ashok are both right. Ramesh reminds us that there will be a need for tightly coupled traditional code behind coarse grained services for a long time yet. After all you would not build an air traffic control system with internal SOAP messaging. Ashok correctly points out the massive benefits of re-use and integration to be achieved by the standardization effort behind SOA. When railway gauges were first standardized ROI was improved but many good locomotives were still built with proprietary machine interfaces. Over time even locomotive parts and interfaces become standardised. Clayton Christensen, who invented the concept of the innovators dilemma, points out that industrial progress involves breaking up "black boxes" into smaller black boxes with standard interfaces, driven by performance increases and technology commmoditization. This will happen to OOP software as SOA s...
Ashok Mansukhani wrote: The current capabilities of SOA have been correctly summarized by Ramesh. While technically, SOA is simply an evolution in the way we use computing and communication cycles, they harbour the seeds of monumental change yet again, as did the internet before. What is important about these capabilities is not that we can today begin to build distributed systems focused on SOA messaging, but the model implicit in the loosely coupled and standardized access to distributed coarse functionality. This has 3 benefits : 1. Improved ROIs and NPVs based on reduction in the risks (and the concommitant reduction in risk-adjusted discounting of future cash flows). The flexibility afforded by interoperability implicit in XSDing interfaces and XSLTing messages extend the life of systems (a-la-mainframe-legacies, etc). Keeping alive, or extending the lives of systems, to beneficially accrue futur...
Latest Cloud Developer Stories
Rackspace Hosting, the service leader in cloud computing, on Thursday announced its acquisition of SharePoint911, an industry leader in SharePoint consulting, training, and "JumpStart" services within SharePoint. The unification of both companies provides capabilities to deliver ...
With Cloud Expo 2012 New York (10th Cloud Expo) now under four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have techn...
Nimble, the social CRM platform has announced the launch of Nimble 2.0, billed as the “most social” CRM platform on the market today. Nimble was designed entirely with social CRM in mind and is the first social business platform that empowers companies with the ability to get clo...
2011 was a year of rapid adoption for public and private cloud services. Instant and on-demand server provisioning was the driving force behind the massive growth. On top, cloud server templates and script automation simplified application installation for simple and pre-defined ...
"Having been in the IT field for many years, I believe the cloud computing chapter in the industry is an exciting one and I am proud to be a part of it," said National Reconaissance Office (NRO) Chief Information Officer Jill T. Singer Tuesday, as it was announced that she was on...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News

CDW Corporation: