Channels ▼

Web Development

Enterprise Service Bus: Part 2

Pushing the Edge of Technology

I know of an insurance company that was analyzing 300 slightly different transformations and they wanted to know if there was a way in which a vendor purchased ESB could either template or build transformations on-the-fly. Basically, they wanted to create XQueries, based upon a set of business rules and make the transformation process totally dynamic. There are a number of ESBs that would be appropriate here that support XQuery. For example, XQuery is used in several of BEA products: WebLogic Integration, ALSB and Data Services Platform. Essentially, the operative words that surface the need for a service bus are routing, transformation and mapping. The open question then becomes is it for enterprise use or is it needed for one specific department. I find that many architects are now grappling with this decision and that if the need is departmental, then it does not require an ESB.

Savvy architects today tend to look for certain distinct patterns that indicate the need for a Web service or ESB. Currently, I am working with a major healthcare provider that is interested in significantly enhancing an existing application that routes and queues open claims and claims adjustments to a number of claims management systems. Claims data is routed based on certain business rules (that is, area of expertise, training, dollar amounts, and so on) to adjusters. There is limited transformation required. Additionally, new requirements state a need to access an external environment for provider reference data. This clearly indicates the need for a Web service.

Managers on the project envision the new application as a significant modification of the existing J2EE application that is five-years old, from a software perspective--this is a lifetime. I see the need for a modern ESB, given the non-standard constructs used in the existing system, such as, threading, lack of separation of business logic from the presentation layer, polling versus MDB-style listeners. We are still in the design phase, so a decision regarding the reference architecture is still under way. I'll keep you posted on the outcome.

Other Participants

A recent Network Computing poll indicated that there are eight significant ESB vendors worth considering: BEA, Oracle, Tibco, Fiorano, Cape Clear, IBM, Software AG and Sonic. Out of that list, the top three were BEA, Oracle, and Tibco. An important evaluation criteria was price. This is where an IBM fares poorly against the rest of the group; surprisingly, though, BEA had a strong rating in the price category. As is the case with most enterprise-wide software decisions, if you are an IBM or Oracle shop that fact will tend to further bias your decision. Still, an SOA is a long term decision and needs to be in alignment with your strategic direction.


Develop a Service-Oriented Architecture Methodology

Use Spring Web Flow with IBM WebSphere Application Server 5.

Use Enterprise Generation Language in a Service-Oriented Architecture.

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.