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


2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
SYS-CON.TV
Top Links You Must Click On


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...
Enterprise Open Source Magazine Latest Stories . . .
Apache Deltacloud, the Red Hat-contributed ReSTful API that abstracts differences between clouds so services on any cloud can be managed – provided of course there’s a driver – has graduated from the Apache Foundation’s incubator and is now a full-fledged Top-Level Project (TLP). The...
With Cloud Expo 2012 New York (10th Cloud Expo) just 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 technical and st...
AMD said late Tuesday that its chief sales officer Emilio Ghilardi had left the company and that CEO and president Rory Read is going to do his job while a replacement is sought. AMD didn’t say why Ghilardi left but it’s assumed Read wants his own people. Read is relatively new to th...
During the lifespan of M3 (Monitis Monitor Manager) there has always been something lacking – timers. M3 execution procedure was outlined in this previous article. The execution mentioned in the latter was a one-time-execution, whereas server monitoring requires periodic invocati...
Red Hat is putting its bought-in Gluster scale-out NAS storage technology, acquired in October, on the Amazon cloud. It’s styled Red Hat Virtual Storage Appliance for Amazon Web Services and other clouds are supposed to follow in short order.
A new episode of the screencast series is now available at the OpenNebula YouTube Channel. This screencast demonstrates the new easily-customizable self-service portal for cloud consumers. Its aim is to offer a simplified access to shared infrastructure for non-IT end users. The scree...
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