BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

A Model For A Federated Service Bus Infrastructure

| by Dilip Krishnan Follow 0 Followers on Apr 09, 2009. Estimated reading time: 2 minutes |

Jack Van Hoof presents a prescriptive guidance on how to model a federated service bus infrastructure such that it affords the various parts on the enterprise interacting with it, the desired levels of autonomy. In his opinion the word ESB doesn't say much about the scope of the audience it services, so he further classifies ESB’s on the basis of their level of federation

This pattern suggests four levels of interest in a federated service bus infrastructure consisting of multiple logical buses:

  • Application level – The application level service buses support fine grained application level processes and activity monitoring. Each application is bound to its own logical bus. In practice this boundary will typically be implemented by an application name space on an application server using JMS (java) or WCF (.net).
  • Domain level – A domain is a functional cohesive entity, like Human Resource Management, Finance, Logistics, Sales, Acquisition. Service buses at this level support cross application processes and activity monitoring within the boundaries of the distinct domains. Domains also expose domain generic services to be accessed by the domain’s applications. Multiple domain buses [might exist], one for each domain.
  • Corporate (enterprise) level – The corporate level service bus supports cross domain processes and activity monitoring. At the corporate level one corporate bus [serves] the enterprise [that can also] be accessed by the domains.
  • External level – An external level service bus supports interaction with the company’s outside world, the business partners, consumers and suppliers.

Since the categorization of these buses naturally forms a hierarchy in the types of buses in an enterprise, he warns that if the federation is not effectively modeled it could turn into what he calls “spaghetti”. To avoid this he use a parent-child metaphor to model the topology and scope of the service buses.

In this pattern a layered structure of interaction is promoted to maintain the desired boundaries of autonomy and yet structure controllability. This layered structure leads to a hierarchical parent-child communication approach. A child has only one parent (it's only a metaphor, folks), a parent may have multiple children. [for e.g.] An application is a child of one domain (n:1); a domain is the parent of one ore more applications (1:n)

Having explained that, he recommends the following rules to avoid getting into a “spaghetti” situation

  • Child-level processes may deliver messages to their parent’s bus
  • Parent-level processes may deliver messages to their children's buses
  • Downward skip-level messaging always cascade from parent bus to child bus
  • Upward skip-level messaging always cascade from child bus to parent bus
  • Parent-level buses may expose services to their children's buses

He also presents considerations that make the practice not as easy as just following the rules.

  • Political considerations
    Domain models will mostly be shaped on a foundation of autonomy which has organically risen from culture, history and mightiness. Domains tend to make their own choices with respect to IT-resources such as applications, tools and platforms.
  • Interoperability considerations
    With regard to a federated service bus infrastructure, the use of different products [… and] Supporting interoperability [between them] is the main focus in the current IT-industry.

Jack presents a logical approach to modeling the service bus infrastructure.  Do read his original article for details.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT