Thursday, November 10, 2005

Is the ESB the way forward for integrating delivery channels?

For some time now I have been working in environments where the delivery channel is king, and everyone seems to have ignored how they integrate multiple channels to produce a simple architecture. You hear a lot about seemless experiences, ubiquitous services and moving from one channel to another without really thinking about how this happens.

So, I have decided to take a serious look in the last 2 years at this space, and at the moment the ESB appears to be the first mature solution that could well be the best model for integrating multiple channels.

The picture here shows a business with 2 geo-locations, a set of services written in various languages and even the odd legacy system (hey we all have them).

I havent come across a business yet that doesnt integrate with other partner companies. The app servers in the picture could run anything from J2EE to .Net running an ESB, though most ESBs seem to be Java oriented. there must be at least 10 commercial and about 5 open source ESBs.

The ESB is written so that messages and data flow through the system visiting components/services/endpoints that work together to provide an overall business service. If you integrate your legacy platform into the ESB, the theory is you are open to integrate that legacy platform with anything the ESB is integrated with, opening a large amount of possibilities. Plus you will most likely have fewer integrations and they are all managable through a single platform rather than having integration spagetti.

Now lets think in a multi-channel mode. I am stood outside, I use my mobile to dial into an IVR (Interactive Voice Response) system. I am taken through a simple set of questions either answered by DTMF (pressing buttons) or Voice Recognition. One of these options could be to send to the mobile an SMS that contains a URL that will take you off to a WAP/3G mobile web site. All of this can be built now with the technologies I mention (at Telecom Express we have already done things similar to this).

So, I now have a system that integrates with each channel and can string together a complete multi-channel user experience ... what is missing. Well as things stand at the moment, not a lot. But think down the road a bit where we have TV to mobiles, video calls, streaming audio and so on, I am not sure how interactive these medias are in comparison.

Anyway, to conclude. For the forseeable future I can see the ESB architecture as central to delivering multi channel business. When mobile phones move more towards streaming architectures I am still unsure how this is to work as I have yet to see how these experiences are kicked off.