Channels ▼

Web Development

Enterprise Service Bus: Part 2

Frank Teti is an industry analyst and principal architect. He can be reached at [email protected]

While SOA and Web services are standards based to a large degree, the Enterprise Service Bus (ESB) "specification" is wide open. That can be a good thing, but too many standards can hamper software developer productivity. An SOA, including an ESB, either using a commercial product, open source or custom made is key to having a truly scalable, enterprise-wide solution. A modern ESB is capable of dynamically transforming Web service payloads, in a deterministic way, through a metadata enabled, policy-driven, configuration environment and intelligently routing the messages to the corporate pipeline.

The Technology Landscape: Vendor Strategy and Tactics

The SOA software industry clearly has room for many participants, at the enterprise-wide software grade, the usual suspects dominate.

BEA's AquaLogic Service Bus (ALSB) was the Network Computing's Editor's Choice during a vendor lab test of eight ESB suites with Oracle being the runner-up. However, this survey focused on core ESB features, not enterprise-wide features such as, ubiquitous integration, process management, workflow, and activity monitoring where IBM excels.

BEA ALSB is a comprehensive enterprise grade ESB, which could serve as the heart of your SOA infrastructure. BEA has combined messaging and management in a single environment. BEA enjoys a reputation in the J2EE software market for being out in front of the other vendors with respect to J2EE spec compliance. Now BEA has turned its attention to providing a comprehensive SOA infrastructure, while again supporting the important standards, such as, WS-Policy, WSDL, XQuery, WS-Security. BEA also has added a certain amount of there own technology to the SOA mix. In ALSB terms, pipelines have stages in which logical choices and transformations can occur. A transformation is where you need to change the format of the data from one type to another type or perhaps augment or even split the message/document in the bus. These transformations are part of a pipeline which is processing the message/document as it moves through various stages.

BEA, like IBM and Oracle, is starting to be able to leverage other components within it software portfolio. ALSB uses a lightweight version of WebLogic Portal for administration and operation. This is probably a plus for BEA, which in the past tended to put too much functionality in its application server, other enterprise grade vendors tend to have a more distributed approach to software engineering.

Even though BEA would consider itself to be a complete SOA infrastructure, architects will still see the need to augment the ESB with tool adapters, possibly more powerful transformation and extraction tools, specialized B2B components, and a possibly a another BPM engine, even though BEA recently purchased Fuego for BPM. BEA through its portal acquisition of Plumtree clearly sees the need to sell to business users, not just technologists, as I believe they have successfully done in the past. The SOA business model is an enterprise-wide model and has to be implemented with that type of scope, if it is to be successful. Only senior business analysts truly have that kind of perspective; BEA is now trying to woo that constituency.

IBM has, in reality, been in the SOA market for a long time. In some organization, the existence and use of MQSeries represents the ESB and for those organizations will remain an interim ESB. However, IBM has had a series of modern process orchestration tools starting with the acquisition of CrossWorlds, which was re-branded to WebSphere Business Integrator (WBI) and then Server Foundation, which really never got any traction. IBM has had a difficult time differentiating WBI from ETL type tools, given its large software portfolio.

Its current incarnation of ESB is Websphere ESB. Because IBM has a number of hardware platforms to support, IBM tends to make a market for there technology well in advance of a viable product being shipped. One brilliant strategic decision that IBM did make was to standardize its WebSphere tooling around Eclipse.

The next-generation, Eclipse-based tool is specifically designed to build and deploy business processes based on SOA. IBM states the tools are easy to use and require minimal programming skills. However, while IBM promotes its "on demand" abilities, in reality, it suffers from a reputation that always puts it squarely behind BEA with respect to ease of implementation. Indeed, understanding IBM's marketing terminology is perhaps a metaphor for understanding its software applications. In fairness to IBM, IBM eventually delivers a robust system that can be used for enterprise-wide deployment.

Oracle If you are an Oracle DB shop and your basic SOA system Use Case revolves around integration with disparate data sources, Oracle Fusion Middleware appears to be a solid platform. From a data-centric perspective, while vendors, such as, IBM and BEA focus on (XML) data analysis of in transit and data at rest using XQuery and XPath, Oracle BI and analytic capabilities are still centered on the DBMS. Oracle's Fusion Middleware does include SOA process and management, so a viable SOA infrastructure is achievable.

Perhaps Oracle's best strategic decision of the year was to not purchase JBoss, as was indicated by the rumor mill. EJB 3.0, JBosss area of specialization is a bloated spec that is encumbered by the need to support existing functionality (i.e. deployment descriptors) as well as new functionality (i.e. annotations), which JBoss viewed as mandatory even though the constructs do virtually the same thing. Today's architects are more interested in building services with lightweight data-centric containers. Oracle is now in position to acquire several of the more nimble SOA pure-plays in order to augment and complete its SOA offering.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.