This article discusses the SOA suite offerings from present-day middleware technology giants, viz, Oracle, IBM and SAG. With so many open source and proprietary solutions available in the market, it is not unusual for solution architects to veer away from the basic needs of their EA landscape. This article provides a single point of reference for all critical components of a good and comprehensive SOA suite. It also compares the applicability of each tool, along with the pros and cons of using the entire suite in any EA landscape.
The author assumes the reader is cognizant of SOA concepts, and believes that previous hands-on experience in SOA development will make this read more meaningful. This article will be most helpful for architects that have experience in at least one SOA stack and would like to broaden their exposure and knowledge to other offerings.
The author of this article has been pragmatic and open about his views regarding the three stacks discussed. He expects the readers to use this article as a point of reference and/or checklist, and strongly discourages readers from treating it as a verdict. He adds that "invariably every enterprise has unique business components, talking to each other in unique compositions which in-turn requires unique integration solution(s)". Please do your own in-depth research and reverse engineering to determine which stack best addresses your integration requirements.
SOA and cloud are two of the most popular topics of discussion in technology space nowadays. Irrespective of whether a discussion revolves around RIA, BI, MDM, ETL, SFDC or Big Data, etc., SOA and cloud have both become central discussion pieces. Another common denominator for both SOA and cloud is that both are fundamentally enterprise solution principles at heart and not technology solutions in themselves, which makes 'the sell' much more difficult.
In the last decade and a half, SOA has gone from being 'a difficult to sell value proposition' to 'one of the most popular items on CIO's wish list' for enterprises big and small. Rapid growth in acceptance of SOA has helped businesses and end users alike-it has positively impacted the top line of business houses and has given unforeseen agility to the EA landscape. This rapid growth in popularity for SOA also provided the fuel to fierce competition between the technology giants of the world, and enabled the rise of multiple open source vendors in space. This supplementary battle front in the middleware space between the IBMs and Oracles of the world has made the SOA offering all the more comprehensive and complete in nature-which is great news for prospective adopters of SOA.
It is very important for all prospective SOA adopters to know that SOA is not a turn-key project. In fact, SOA is a discipline, a long-term commitment of collaboration between business and IT and an attitude overall. There are multiple technology suites, both proprietary and open source, available on the market that facilitate SOA journey and help organizations achieve overall IT maturity-however, a well-versed team of solution and enterprise architects is required to find the solution that best meets the enterprise vision and requirements.
SOA suites available in market are like any other COTS products-one size does NOT fit all. To avoid a 'square peg in a round hole' situation it is very important for the solution and enterprise architects to make sure that the chosen SOA stack meets the current needs, the future vision and helps align IT with the overall business roadmap.
Although all of the SOA suites available on the market are based primarily on the SOA Reference Architecture [REF-1], the complete SOA stacks come in different shapes and sizes. It is very critical to see which one best fits your plans for your particular EA.
SOA Stack Grid
I have created a grid-based comparison of the three main proprietary SOA suites available on the market. This grid encompasses all critical components of a comprehensive SOA solution, for both modern and legacy enterprise architecture landscapes. I have also included a comparison on the hygiene features of the three suites. I strongly encourage the readers to use this as a grid as a point of reference and to be prepared to move back and forth between the middleware requirements, the various suite offerings and your expectations from the overall EA in the long run. I have also highlighted the best in breed solutions from all three stacks, on the basis of my experience on all three stacks so far.
Comparison of the Main Features of SOA Stacks
The section below discusses purely personal opinions and has been compiled primarily using my personal hands-on experience with all three stacks in combination with my work experience on business transformation initiatives for multiple enterprises.
1. Enterprise Service Bus
Once the EA/SA group(s) is/are able to freeze on the difficult question of whether to add ESB to the SOA landscape, they have a relatively easy task ahead. Fortunately, all three technology families provide equally strong ESB offerings.
- Oracle's OSB has always been considered one of the best service bus solutions. Oracle has managed to retain the great features of ALSB while adding some great features in the areas of connectivity support and transformations. It is most suitable for high volume transactions requiring orchestration, transformation and/or security. It would be a good fit for a well-spread EA landscape built over multiple decades.
- SAG Integration server is built on very strong architecture framework. Amongst the three, SAG Integration Server scales best under a very high volume-very high frequency environment. I personally believe it is a very good fit for ecommerce platforms.
- IBM has a legacy when it comes to enterprise software suites, recently adding a feature to its cap by acquiring sterling commerce. IBM Message Broker is probably one of the most widely accepted ESB solutions available in the market for over two decades. IBM is most widely accepted by banking and financial institutions.
2. Process Manager/Server
Process Manager is another critical tool in any good SOA stack. The capability of a SOA stack to mediate, orchestrate and choreograph the services adds a completely new paradigm to the SOA solutions altogether.
- Oracles BPEL Process Manager is an extremely scalable and flexible platform for service orchestration and choreography. It has truly matured over time. The ability of the process manager to be integrated into the enterprise manager provides the administrators with an integrated and unified view of all the running and deployed processes.
- SAG lags far behind both Oracle and IBM when it comes to BPMN. SAG in turn offers orchestration capabilities via proprietary flow service (document-based). In my experience, I have come to believe that flow service does not meet the level of maturity and flexibility offered by Oracle and IBM Process servers.
- IBM has one of the most robust and fine-tuned Business Process Manager offerings. The IBM Process server has an integrated rules engine, which adds an extra dimension to Business Process Management.
3. Trading Partners and B2B Support
B2B support is another significant factor to consider when making a stack decision as it is the fastest growing business, especially in the Asia Pacific and in North America.
- Oracle offers Oracle B2B and B2B adapters, built ascetically to industry standards and backed up by strong Oracle AIA/PIP. Oracle supports multiple transport protocols, industry regulations, message formats and provisioning mechanism to allow EA to scale horizontally in as little time as possible.
- SAG B2B is simple yet awe-inspiring. The SAG acquisition of webMethods has been most significant in terms of impact on SAG's B2B clients. The SAG Integration server is extremely robust, the Broker server very scalable-add to it the power, reach and simplicity of Trading Network, and it is the perfect B2B integration suite.
- IBM has all the flavors of the best tools for B2B integrations in the shape of Partner Gateway, Sterling Commerce and Transformation Extender. IBM has one of the most comprehensive B2B solutions available in the market, covering multiple domains and industries. The acquisition of Sterling commerce has been the most significant decision for IBM as it adds a dimension of multi-channel ecommerce capability to the existing
4. Service Virtualization/ Test Automation Framework
Test framework is a very critical facet when building an enterprise-level SOA body. Solution architects must consider testing the framework alongside adapters to assess the overall applicability of the solution in the enterprise landscape.
- Oracle AIA comes with a CAVS module, which facilitates running simulation and dry runs on the designed/built business processes. CAVS is very straightforward and service focused. Service virtualization under CAVS is the most attractive proposition for enterprise architects.
- IBM offers the Rational Tester for SOA quality, which is quite comprehensive and a robust solution. It goes beyond running simulations and offers comprehensive test framework for service-based environments.
5. Legacy Application Support/ Mainframe Support
Mainframe and UNIX server integration is a very important aspect of modernization for any enterprise, big or small. The integration of downstream systems should be relatively seamless and scalable to allow flexibility and agility within the integration space.
- Oracle offers mainframe integration by means of multiple partner adapters and gateways. Remember that use of adapters means ease of development at more expenditure and effort.
- SAG offers server-based mainframe integration solutions in the shape of ApplinX and EntireX. The server-based solutions are easier to build, monitor, manage and enhance. Although separate licenses means extra cost, it is relatively cheaper when compared to Oracle-but one may have to do complete ROI/TCO analysis to prove that hypothesis.
6. Individual Strengths of the SOA Stacks
- Oracle - Consolidation of multiple solutions into a relatively succinct suite
- IBM - Solutions for everything under the roof
- SAG - Very strong standing in the B2B/EAI space
7. Individual Weaknesses of the SOA Stacks
- Oracle - A lot of focus on adapters
- IBM - Too many overlapping solutions and tools
- SAG - Little or no support for open standards like BPEL, REST
8. The Best SOA Tools
In the end, my selection of the three most outstanding tools within the SOA stack of products from each technology family is as follows:
- JDeveloper (SCA)
- Integration Server
- Trading Network
- Message Broker
- MQ File Transfer
- Sterling Commerce
Other Important Considerations
While evaluating a stack, one must also consider the out-of-the-box support for messaging, transport protocols and different document types that are supported by the chosen SOA stack.
As I mentioned in the beginning of the article, SOA and cloud are both complementary enterprise solutions and incidentally have been strategically promoted by both Oracle and IBM. One must also carefully evaluate the support for cloud and mobile applications when considering a SOA stack. The support for multiple cloud deployment topologies is very critical for middleware platforms for enterprises of the future. Oracle and IBM both have a very strong presence in cloud, and it was a rather seamless movement for both to take SOA on cloud. SAG, on the other hand, started its journey for mobile just a couple of years back, and forayed into SOA on cloud with its 8.x release of wM.
Code version management is another pivotal area that every business-driven EA team needs to keep in mind when deciding on integration suite. The SOA centric code management tool could go a long way for an enterprise in terms of lower TCO and higher ROI. I have used CVS and IBM ClearCase for Oracle SOA Suite, both source code and config files. I personally feel that SAG webMethods has the weakest code management support within its stack, probably because code is saved primarily as config files. CrossVista does provide the wM users with a ray of hope with code and release management.
When it comes to customer references and client base, Oracle has the best customer testimonials amongst all of the SOA stacks, while SAG, unfortunately, has relatively poor customer references [REF-2]. However, I must add that SAG offers one of the best technical support teams-extremely proactive with very short turnaround times for most issues. I have had mixed experiences with support groups of IBM and Oracle and I would rather not comment on either.
Another hygiene factor worth considering would be the support for other COTS products/families. Though adapters make the integration rather seamless, it is an additional cost to buy an adapter. Incidentally, Oracle has a huge range of premium products-viz, Seibel, PeopleSoft, JD Edwards, BRM, OBIEE-that reduces the overall TCO in case you are using any of the abovementioned COTS. The long-term bets of Larry Ellison in M&A in the late 90s are finally paying off in great customer experiences. IBM is not that far behind Oracle in application development COTS, but it obviously does not have the depth in enterprise solutions like Oracle, SAP or Microsoft. Unfortunately, SAG is not in competition with either as it started investing in strategic solutions not more than a decade and a half ago. SAG has huge ground to make, but one must keep in mind that SAG has very strong strategic alliances with SAP, Oracle, Microsoft and IBM, which has not only fuelled its expanding market presence in the last decade but also helped SAG mature with time.
The choice of SOA stack is indeed very tricky. There is just so much information that one can capture beforehand to enable making the best judgment call on SOA stack. In order to minimize the impact of possible design decision entanglements, I recommend readers to focus on three major outcomes from enterprise-wide SOA initiative:
- Increased operational efficiency
- Improved overall business agility
- Rapid innovation
While one could use the abovementioned objectives as guiding principles, one must not veer away from the basic pillars and underlying principles of SOA, viz, service discoverability, composition, abstraction reusability, etc.
A good architecture solution is NOT rendered outdated by advancing technology, and has objective reasons for advancing it instead of alternatives. Don't be a victim of 'Accidental Architecture;' plan to spend good time and effort on proof of concepts, prototyping and in-depth analysis of the chosen stack. Remember: integration stacks are the most difficult and costly-to-replace COTS solutions in any enterprise landscape, so don't hold back before taking a deep dive.
[REF-1] - Design an SOA solution using Reference Architecture
[REF-2] - The Forrester Wave™: Comprehensive Integration Solutions, Q4 2010