Build, protect and deploy apps across any platform and mobile device
Leverage a complete UI toolbox for web, mobile and desktop development
Automate UI, load and performance testing for web, desktop and mobile
Rapidly develop, manage and deploy business apps, delivered as SaaS in the cloud
Build mobile apps for iOS, Android and Windows Phone
Optimize data integration with high-performance connectivity
Connect to any cloud or on-premise data source using a standard interface
Build engaging multi-channel web and digital experiences with intuitive web content management
Automate decision processes with a no-code business rules engine
Burton group's Anne Thomas wrote an obituary for SOA, and she writes: "SOA met its demise on January 1, 2009, when it was wiped out by the
catastrophic impact of the economic recession. SOA is survived by its
offspring: mashups, BPM, SaaS, Cloud Computing, and all other
architectural approaches that depend on “services”."
While this is dramatizing a bit, it is not entirely without merit. I have always wondered where exactly are the SOA use cases. In the real world (beyond the POCs, CTO proposals and pilots), time and time again I come across cases where someone in an organization bemoans that the promise of SOA was never delivered! A very rosy picture was shown during the POC and pilots, but post that, in the real world, the gains realized are nowhere close!
Yesterday, I was at a "SOA - past, present & future" panel discussion in Bangalore, along with SOA Matrix CEO and Head of the Java and middleware horizontal at Satyam. We spent most part of the hour talking about precisely this! Recognizing that mainstream acceptance is not as wide as expected, we were deliberating on the possible reasons. One consensus that emerged is that the complexity is not so much in the paradigms, technology nor the products. The biggest challenge is getting the required functionality at the right granularity, and this is more about the existing solutions in the enterprise than it is about SOA. Re-engineering the solution to "expose" the functionality with a coarse grain is never easy. Often the incumbent applications would be those with just a UI interface. In such applications, as we all know, the tier separations are not that rigidly maintained. A good amount of functionality spans the presentation and functional tiers. Trying to re-engineer this and create a single coarse grained function for the required service is not going to be easy at all! If this is the case for a single service, imagine the magnitude if the problem is one must get hundreds of key business functions "exposed" as services. (And without these hundreds, one cannot even begin to realize the dynamic enterprise promised by SOA, with easy to compose business processes, BAM on-demand, and more.)
Now, I can't imagine how any amount of technology can solve the above problem?
In this context it is interesting to see a pragmatic narrower view of the cloud as proposed by David Linthicum - SOA morphing into private clouds, or as a subset of the whole enterprise or the larger public cloud, as put forth by Mikael Ricknäs of IDG News service. Thankfully, ZapThink MD quantifies the reality realistically; as quoted in ITWeb: "People are asking the right questions about governance, loose coupling, best practices and business agility, one of the major benefits SOA confers," says Bloomberg. "And they're asking the right questions up-front, seeking to solve a business problem rather than adopting SOA for SOA's sake."
For more perspective on Anne's post, read my colleague Dan Foody's post, Goodbye SOA, we hardly knew you., or listen to his podcast, Cloud Computing - The New SOA?
View all posts from Ramesh Loganathan on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.
Copyright © 2017, Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks or appropriate markings.