Welcome to MSDN Blogs Sign in | Join | Help

Welcome to The Metaverse

Navigating the service-oriented, identity aware metaverse

News

  • Disclaimer:
    The content of this blog are my own personal opinions and do not necessarily represent Microsoft's position, commitments or strategy. In addition, my thoughts and opinions often change, and as a weblog is intended to provide a semi-permanent point in time snapshot you should not consider out of date posts to reflect my current thoughts and opinions.




    Add to Technorati Favorites
ESB == SOA++???

Something is really troubling me. You may have noticed that I have been pondering the notions of SOA and, more recently, ESB and that I have some issues with the latter. More concerning even that the notion of companies building their enterprises on top of entierely proprietary infrastructure which promise UEI (Utopian Enterprise Integration) is the confluence of terms:

Why is our industry so caught up with jumping on bandwagons and adopting terminology that has no meaning or clear, well defined, broadly adopted value proposition?

Take for example the fact that almost everyone talking about ESB also talks about SOA at the same time. Some claim that ESB's enable the building of SOA's. Some claim that SOA enables ESB ...

STOP IT!!! Will someone PLEASE turn down the volume????

It's like the industry has forgotten what we're trying to do and that nobody is able to see beyond where we stand today. We have EAI but that's not good enough - EAI is too "edge condition" for most EAI technology vendors' tastes and it seems like they're promoting this "new" ESB terminology that seems to  be an attempt to centralize their offerings at the core of the enterprise instead of at the periphery.

But where is the link to SOA.

As I have opined before ... the whole "SOA" situation is just nasty. There are a million incompatible definitions of SOA, few of which have a great deal in common. If you read the definition of SOA from any technology vendor, it's amazing to see just how well their definition fuses with their currently or soon to be available technologies, products and services. Because no two technology companies have the same product and feature set, there are therefore often chasm-like differences between the vendors' definitions of SOA. This is one of the primary reasons Microsoft has not jumped on this bandwagon ... there isn't a single wagon to jump onto - there's just a random collection of vehicles trundling around - some are rickshaws, some are 747's, others are ocean-going supertankers; all are trying to be Hummers that perform like Lamborghinis, with the fuel-economy of Hondas and deliver value like a Kia!

This is such a shame. There is enormous value in the notion of "Service Orientation" (SO) ... that is, SO defined abstractly from any technology, product or service offering.

Remember back to the early days of OO? Remember how we used to be able to articulate what OO was regardless of any development tool/language/platform/system??? THAT is what we should be aiming towards when we talk about SO and Services, not some utopian and yet flawed proprietary marketing spin-fest aimed purely to sell more bits to unsuspecting customers in a desparate attempt to retain/regain market share.

SO has as much to do with [insert technology of choice here] as OO had to do with C++, Smalltalk, Delpi or Eiffel.The notions of SO are, if properly defined, pure, clean, abstract and generally applicable to any given distributed systems platform.

Why then all this mess, confusion and muddle about the linkage between SO(A) and ESB. To my eyes, there is none. They are orthogonal concepts. One is about integrating disparate, incompatible systems, the other is about building distributed systems in the future that avoid being disparate and incompatable and communicate openly, freely, securely and reliably by default.

But then, maybe I am wrong. Maybe I am missing something here. Please comment and correct me if I am!

Posted: Monday, May 02, 2005 12:23 PM by RichTurner666

Comments

Sam Gentile's Blog said:

# May 2, 2005 2:26 PM

Jes said:

# May 2, 2005 4:33 PM

Uber Times said:

ESB is a concept which includes a mix of technologies (messaging, connectivity, routing, transformation services, etc.) working together and can be enabled by Service Orientation.
# May 2, 2005 11:16 PM

Message for you, sir! said:

# May 3, 2005 12:01 AM

Alex Papadimoulis said:

I welcome ESB as our new hyped fad.

One of the biggest problems with SOA is that it has the potential to be de-acronymed. And when you do that, it just sounds LAME. Soa. "So, uh ... what?" Yuck.

Just try to do that with ESB.
# May 3, 2005 8:14 AM

Radovan Janecek: Nothing Impersonal said:

SOA exists, it has good enough definition, and this definition helps customers to use web services. At least, by Systinet...
# May 4, 2005 4:48 PM

Sean said:

You're not wrong! ESB is NOT SO! SO is network centric, the terms will change and mature, but SO standards will rule the day eventually. ESB is Jurassic, centralized architecture with a new spin. It's still centralized, and you are totally dependent on your ESB vendor for new features and functions in the bus. I think a good analogy to ESB can be made with the POTS network versus the Internet.

In the POTS network, the communication channel is smart, clients are dumb. Adding smarter clients like fax machines only add modest value, but ultimately more sophisticated capabilities aren’t deployed largely due the enormous complexity and centralized control of the Telco. In the Internet/network model, the channel is dumb (relatively) and open and the clients are smart. This model allows for a new technologies to exploit this communication paradigm and build new systems and services on top of the base platform.

Look at the result.. we now have the web, web services, email, voip, etc.. all running over the same basic platform. Sure the platform has evolved too, but only to provide higher speeds and better reliability.

Fundamentally, centrally controlled systems (technological or even political) are not interested in change or adaptation, they are slow moving, and in fact actively resist efforts to unseat their hegemony. In the distributed network model, change occurs rapidly as it fundamentally enables new, unforeseen capabilities to be created and deployed. The network computing model has resulted in an explosion of services, technologies, products and industries to support the flow of data and applications.. most beyond the wildest imaginations of the Telco planners of old. The ultimate winners are customers because these new systems must provide some value or they won't be adopted or will be unseated by newer, more capable ones.

This may be a bit unfair and oversimplified because many of the ESB vendors have built some very compelling and capable technologies, but IMHOP they are the last generation of a dying paradigm. The last generation of a mature technology usually surpasses the capabilities of the upstart technology, but ultimately the new paradigm was designed to overcome limitations in its’ ancestors, and ultimately overcomes it.

One final analogy.. the last generation of steam locomotives where more efficient and powerful than the first several generations of diesels. Yet once diesel technology matured a bit it's superior reliability and relatively low maintenance requirements more than overcame these issues. The same will hold true for ESB.

If you need the power and stability of a mature ESB solution, then they are there, I would, on the other hand, rather work with the commodity standards to come up with solutions that will eventually overcome older, centralized technologies. Fabrics will rule the day!
# May 6, 2005 6:39 PM

jonase said:

The S in SOA comes from Business Services and has nothing to do with technical aspects. SOA is misused by developers and should not be described as a term for "using web services".

ESBs are the best way to implement and orchestrate business services in an enterprise solution. Gives BAM, asynch dev. and EDA for free.

SOA + ESB = Future
# August 14, 2005 6:12 PM

RichTurner666 said:

Jonas - I agree with most of what you wrote above ... up until the statement that "ESBs are the best way to implement and orchestrate business services in an enterprise solution". I agree that ESB's are *a way* to build enterprise systems, but I do not agree that they should be the de-facto infrastructure upon which to build such systems. I can get BAM, async messaging, x-platform interop, lightweight communications mechanisms, peer-to-peer comms, reliability and security from WCF alone - no ESB in sight. Not to disparage the notion - ESB ... or, let's call it by its real name "Enterprise Integration Broker++" has it's place - just not at the hub of our enterprise systems.
# August 30, 2005 8:24 PM

slashkev said:

i haven't worked with a modern ESB as of yet.

but, i get this impression that some sales exec sells some business exec some story of how and ESB can connect a bunch of web apps, some disparate databases, a few CICS regions, some random MQ instances handling EDI, microsoft office and their email system.

just seems like we are trying to build skyscrapers with bricks and morter.

WCF is the first concerted effort to build the foundation for an SOA, at least in the last 5 years.
remember DCE and then DCOM.
WCF looks a lot better than its predecessors, and has the potential to make an SOA work.

but, an SOA/ESB without something like WCF - i just don't see how this can potentially scale, at least in terms of being able to management a bunch of services and their communications.

so then the whole discussion of metadata repositories and services registries come up.
and you see companies like sun already trying to sell these.
registries of what web services - there are no real standards for them as of yet, in the java world at least.
i've read sun's marketing literature on their registry, and it's so amorphous, that i can't figure out what it actually does.
and i suspect it doesn't do much that is useful.

so, current SOA/ESB initiatives - seems like we are putting the cart before the hores here.
# January 9, 2006 1:30 AM
Anonymous comments are disabled
Page view tracker