Sybase's "At-The-Glass" Tools Ease Mobile Dev
This month, Sybase begins shipping a new software toolkit for ISVs that promises brings a new perspective, and a ton more efficiency, to the chore of tuning and integrating enterprise apps for mobile users. See how Sybase's Mach Desktop could let devs sidestep complex and tricky backend integration and instead do "at-the-glass" integration, by just picking the data elements they want from one or many backend applications.
This month, Sybase begins shipping a new mobile device software toolkit that brings a new perspective and far more efficiency to the chore of tuning and integrating enterprise apps for mobile users.
The Sybase Mach Desktop lets developers do what Sybase execs call "at-the-glass integration." The principle is simple: Let developers for mobile devices pick and choose the data elements they want from one back-end application (or a mix of back-end applications), without having to worry about all the complex integration work at the back end. Mach Desktop can capture data from web, database, XML streams and XML web services.
Mach Desktop enables developers to sidestep the time-consuming, complex parts of back-end integration, and customize mobile device applications and UIs based on the data the end users are looking for.
"Mach Desktop is a different way of looking at integration," Dave Wolf, senior engineering manager at Sybase told Integration Developer News. .Through a rich set of abstraction technologies, Mach Desktop lets the developer "integrate through the UI, rather than work in all the complexities of the back-end integration," Wolf added.
Wolf described the inner workings of Mach Desktop this way:
"Somebody within an organization may have already done the difficult and tedious work to turn a [back-end] API into a [front-end] desktop interface, so why can't the mobile developer leverage that work? After all, the information the mobile developer needs for the mobile application is probably already defined by some interface, so one of the ways to rapidly integrate data [from different back-end systems] is to integrate at the UI layer -- not the back end."
Further, Wolf said, "If you're going to integrate HR and payroll, it's incredibly likely that although they both have integration brokers available, they also likely both have UI between the two. We just asked, 'Which is easier for the vast majority of developers to use?'"
Mach Desktop uses XML and its variants, and so can support a wide range of devices, including cell phones, PDAs, and even kiosks and interactive voice systems, such as those that read your e-mail messages over the phone.
In a statement, IDC noted Mach Desktop's ability to support multiple devices and UI approaches. "With the emerging demand for multiple user interface (UI) support, from Web-enabled applications to mobile data and voice-driven applications, ISVs are challenged to adapt their applications' UI to the way their customers want to work," said Stephen Drake, program manager for IDC's Mobile Infrastructure Software unit. "Vendors should look for OEM-ready UI management and content delivery products that help them reduce development overhead, delivery risks and ongoing support costs, while getting them to market quickly."
While the Mach Desktop is a Java /J2EE application, it is designed to workwith a variety of popular non-Java products, including Open Source Apache and Microsoft ASP/.NET. In fact, the Mach Desktop comes as a Java application with an Apache/Tomcat web server built in. And, as far as capturing Microsoft-encoded data, "we can capture data from an ASP page from the UI," Wolf said. "That's the whole beauty of integrating your data from the front end."
Inside Mach Desktop: 3 Steps to Front-End Integration
With Mach Desktop, Sybase engineers set out to translate integration for mobile devices into three (3) simple questions:
- What data/information do I need to provide the end user?
- Where (or on which device(s)) does the data/information need to be presented?
- How will the device access the data/information?
"There are a bunch of point products that deal with these problems," Wolf said, "but there isn't a single environment from which a developer can solve the problem." Point products in use today, Wolf noted, include: pure play portals, transcoders to make data available at different places (such as those from Cisco/IBM), and mobile synchronization tools to align back-end and front-end data (such as the one from Sybase).
"When we looked at the problem that customers were having, we heard loud and clear that they didn't really care about the back end; they cared about how they experienced the integration. Further, we found that OEMs would be very interested in doing that if, by providing that capability, they could sell deeper into the organization or sell more licenses by directly supporting more types of devices."
The heart of the Mach Desktop integration magic, however, is its message bus, which lets the data elements and blank fields talk to each other.
"It's a message bus that does the integration," Wolf said, "because in effect, it links the fields that are asking for a parameter to those data elements that match that parameter." As an example: Mach Desktop linked one website that provided company stock symbols with news feeds for that company from another website. "The data element on the left has told the bus I have a message whose name is 'symbol', and the element on the right says I am looking for 'symbol'. The key to integration is to help the data elements know one another's parameters," Wolf explained. The parameters are then matched up at the message bus, and published in the markup language or format the developer has specified. .
Aside from the message bus, to achieve its front-end "at-the-glass" integration, Mach Desktop sports these features:
- Content Caching - Increases application performance and supports occasionally connected users
- Content Capture - Tool set for gathering, aggregating and presenting structured and unstructured web content
- Content Syndication - Helps automate publishing of information needed to deliver fresh, personalized content to users
- Experience Assembly - Creates extremely rich user experiences with powerful layout managers to provide users with the quality of user experience they are accustomed to.
- WAP Support - Standards-based approach for mobile web ensures maximum interoperability with micro-browsers
- webDAV Support - Extensions to HTTP protocol allow users to collaboratively edit and manage files
- Wireless Markup Language - Support for WML enables reduced landscape delivery to mobile web devices
Hands-on: Doing "At-the-Glass" Integration
To build a custom UI/data capture for a mobile application, the developer simply selects the data field(s) he wants from within the Capture Engine. In turn, the CE extracts that data from out of the page and allows the developer to treat it as structured data. The extracted data is converted into Sybase's CCL (Content Capture Language) language, which allows the data to be "played back" in HTML (or a variety of markup languages, including XML, WML and VoiceXML). CCL is also the language that Sybase uses to extract and re-post content for its Enterprise Studio and Portal Interface products.
The conversion to CCL and subsequent transformation into a markup language tend to eliminate some barriers to making SQL and legacy data accessible to mobile users, Wolf said. "Because we can capture data from DB and play it back as XML, I can further mark some metadata to describe what media types I want to make the data available to, which gives me the ability to customize multiple UIs for a single user that may have different devices, such as WiFi, PDA and even a voice messaging system."
Wolf offered this hands-on example of how Mach Desktop would work in an enterprise: "Let's say I want to know who are my employees and what is the revenue pipeline by employee. Two apps help me answer this: my HR through PeopleSoft and my CRM for Siebel. They share some common keys, which is the employee ID. They both have UIs. I could do a long and difficult integration project and do this integration at the back end, or I could do this 'at-the-glass' integration to select the viewpoints I need from each application and weave them together into a new composite view."
At Sybase, engineers have an internal site that used this same approach with Mach Desktop to integrated five back-end applications together for mobile users, Wolf added. "When I click on one customer number, I get the number of Open Bugs, revenue for past year, current support agreement, etc.," Wolf said.
At this time, Mach Desktop is a single-server product designed expressly for ISVs to extend the reach of their commercial software packages, and has both a development-time and a runtime version. The development-time version comes with an optimized IDE (based on Eclipse) for doing data/information captures, as well as aligning those captures with designing the integrated UI. The runtime version is bundled with an Apache/Tomcat web server.
Among the early ISVs to employ Mach Desktop, content management company Percussion Software was able, in under 45 days, to add Mach Desktop capabilities to its Rhythmyx product line to provide its customers with a unified solution for accelerated content delivery in conjunction with its leading content management system.