Wednesday, April 12, 2006

Using an ESB to Connect the Enterprise to Mobile Users

Years ago, I worked for a company that built products for mobile and wireless applications. We had a platform for developing systems that connected the enterprise applications with users in the field through their handhelds, PDA's, smartphones, etc. I was thinking about it the other day and it struck me how similar that platform was to what we call ESBs today. Thus, it struck me that besides being SOA infrastructure, ESBs are also good for extending the enterprise to the edge--the mobile users. Here are some reasons why:


  • Enterprise apps are available as a set of loosely-coupled services that can be selectively exposed to the mobile devices. This is not a direct result of using an ESB, but if an organization is using an ESB, then they are most likely building (or already have) an SOA--so their enterprise apps will be available as a set of loosely-coupled services.

  • The asynchronous messaging, guaranteed messaging, and store and forward capabilities of most ESBs are perfect for occasionally connected devices.

  • The data transformation capabilities of ESBs can be used to transform data for optimized presentation on the devices. For example, converting from XML, HTML to WML.

  • The protocol mediation capabilities allow for converting to/from different protocols supported by the devices, e.g. WAP-->HTTP-->SOAP. Note some type of gateway will still be needed to convert between the various wireless protocols such as GSM, CDMA, CDPD, Bluetooth, etc. to the TCP/IP based protocols that most of the enterprise apps are built on top of. But once all that's in place, it will abstract complexities of wireless communications protocols from the enterprise developers, and vice-versa--developers of the mobile apps don't have to deal with the enteprise issues.

Here's a rough sketch of what it may look like.



,

No comments: