FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
SOA Web Services Blog: Should I take the bus?
XML & Web Services
<![CDATA[[

Web Services and Smart Data.

by John Dorsey
THE SOFTWARE SIMPLIST

Web Services Wisdom.

by Udi Dahan
May 27, 2006

Should I take the bus?

In the comments of my first entry (Hello World), Dennis Kornbluh asks:

"So Udi, what do you think of Enterprise Service Buses for SOA apps? What is there to gain with an ESB, other than complexity?"

Well Dennis, I've written quite a bit on infrastructure needed for SOA - what I call a Bus, but we really need to focus our examination on two major contexts: a single distributed system, and integrating multiple, existing systems (EAI).

Articles on the Bus:

1. ESB—What's a "Bus" and Why Should I Care?

2. Is that all a bus is?

3. Location transparency, SOA, & ESB

Another very interesting article on the subject comes from Nick Malik, Jacob and the Data.

However, infrastructure is hardly enough.

In order to "reap the benefits of SOA" (how many times have you heard that from vendors?) you need a good partioning of services.

OK, enough vendor-speak.

There are basically two major contexts to talk about services and SOA:

The first is a distributed system, the important thing being that it is a single system. Often the system is under development. This is a common scenario which often is the result of jumping on the SOA bandwagon. In this context, what we are partioning into services is the system.

The second context can be best described as integration of existing systems/applications - what's been called EAI. In this case, it isn't really clear what we're partioning. Does this mean that this context will not benefit from employing SOA? In a word, no. In two: hell no.

While each context is probably deep enough to fill a number of books, the important thing to understand is that a bus may be used differently in each. Much of the functionality being put into ESB products is to better support the second context. The reason more "smarts" are going into the "network" is the desire to leave the current applications alone. That still doesn't make it the right thing to do.

So Dennis, I'm sorry I can't give you a shopping list of benefits, but if you use the Bus architectural pattern and do your technological mapping appropriately, I'm sure you'll find a number of improvements in many areas. If you'd like to send in a concrete example, I'd be happy to show you how to model it using the Bus pattern.

Posted by Udi Dahan at 03:34 AM  Permalink




 
INFO-LINK