Diversity and proliferation continue to mark the world of mobile devices. How do you normalize or flatten your problems in this domain? One path worth checking: The Enterprise Service Bus, or ESB.
Even Android, which was once expected -- at least for Java developers -- to flatten the mobile device landscape a bit, has turned out to be a fount of diversity; if only because each model of Android device can sport its own display. Plus, the Google-backed Android's version of the JVM has been scorned as a bad fork by Java steward, Oracle, which caused further confusion.
We developed an intermediate message layer where the complexities of the handset are routed to a single point.
Venkat Gaddam, Director of IT at Verizon Wireless
Earlier this year, Venkat Gaddam, Director, IT, Verizon Wireless presented his take on mobile development at an IBM Impact 2010 panel on ESBs chaired by expert Judith Hurwitz. Gaddam described the issue Verizon Wireless faces on this front, and opened a window at the same time on the notion that an ESB or similar technology can go some of the way to dealing with device complexity.
"We saw an explosion of operating systems and handsets," said Gaddam. Just to complicate things further, at any given point in time each phone could have a different OS version, and different patches, he noted.
The question Verizon faced was, in Gaddam's words, "how could we come up with a common platform for handling all these versions?" An ESB used for converting formats was the key. The choice of ESB narrowed on the use of IBM Message Broker.
"We developed an intermediate message layer where the complexities of the handset are routed to a single point. Through the ESB we will translate that into a common format, and then direct problems to solutions centers," he said.
The operation is complex. For example, there are PCI mandates and up to 35,000 firewall rules that can exponentially increase 'touch points.' Because the systems change every week, the objective must be to mediate transfers and issues without tying to a specific device or system.