Wireless integration with the back office should get a whole lot easier this month as Research in Motion (RIM) Ltd. prepares to offer a new framework for developers.
The Waterloo, Ontario-based company, creator of the BlackBerry wireless e-mail device, plans to unveil a new version of its Mobile Data System (MDS) development framework at this month's Wireless Enterprise Symposium in Orlando, Fla. MDS 4.1 enables wireless applications to integrate with back-end enterprise systems using Web services.
Using the visual design tool in MDS 4.1, developers can browse to any Web Services Description Language file, find the available Web services they'd like to access and simply drag and drop them into their application. The tool then takes care of generating the underlying "plumbing" code, said David Yach, vice president of software at RIM.
The latest version of the development framework consists of three major components: the MDS Studio, the MDS Runtime and MDS Services.
MDS Services, which reside on the BlackBerry Enterprise Server, handle requests from BlackBerry MDS client applications, and in turn manage interactions with corporate applications.
"The [actual] Web service request initiates from behind your corporate firewall, which then allows you to get at any of your internal, corporate applications that are Web services enabled," Yach said. "It's the back end that's really doing the communication on behalf of the handheld using Web services."
Because of the communication overhead usually associated with XML, the Web services footprint on the actual BlackBerries is quite small, Yach said. The BlackBerry uses a form of Wireless Application Protocol Binary XML (WBXML) to send and receive compressed XML messages.
For example, WBXML would be used to compress pricing data a sales representative is accessing on a BlackBerry, Yach said. However, even after WBXML compression, there is still room for further compression if the pricing information is structured in a uniform way. This is where a more proprietary compression format would be needed.
"SOAP and XML are not the most efficient over wireless networks," he said. "[For BlackBerry to MDS communications] we use a proprietary, compressed version of binary XML. We support the WBXML specification, but we're going beyond that and doing our own kind of compression, due to the types of applications we support."
To meet the growing demand from the mobile industry for improved XML performance, the World Wide Web Consortium (W3C) has formed the Binary Characterization Working Group to create a single, XML binary format.
But opponents argue that a single binary specification would not meet the diverse needs of the industry. They also argue that any radical change to the current XML specification could potentially result in interoperability issues with existing XML parsing technology.
Meanwhile, at the upcoming Wireless Enterprise Symposium, Santa Clara, Calif.-based Sun Microsystems Inc. will demonstrate how mobile Web Services applications can be created using the BlackBerry MDS v4.1 with the Sun Java Enterprise System.
Sun, which has been touting its JES platform for service-oriented architectures (SOAs), has also been working on the Fast Infoset project, which aims to develop a binary encoding for XML to improve performance.
Mobile design patterns for SOA
Many of RIM's independent software vendor partners have been trying to build mobile applications, but had to figure out how to optimize what went over the air and provide runtime forms and transaction management on the device, Yach said.
With MDS 4.1, RIM aims to capture what it calls "design patterns" for mobile applications and make these available to its customers, so that they can concentrate on solving business problems instead of figuring out how to make an SOA work in a constrained environment.
One goal of Web Services and SOA is to separate the presentation layer from the application layer in a way that's truly loosely coupled, composite and reusable, said Ron Schmelzer, senior analyst at Waltham, Mass.-based ZapThink LLC.
"The devil is in the details, however, since it is tricky to build interfaces that are appropriate for the devices and don't require too much recoding as interfaces change," he said. "Web Services and SOA hope to make those details significantly easier to solve."