taBle oF coNteNtS 1 Sybase Unwired Platform 1 Mobile Application Development 2 Mobile Business Object (MBO) Development 4 Mobile Business Object Development in Eclipse 4 Device Application Development 4 Hybrid Web container–based development (Mobile Workflows) 5 SAP Workflow Mobilized Using Sybase Unwired Platform 6 Native Application Development 6 Summary
1
SyBaSe® uNwired platFormSybase Unwired Platform is a flexible, open infrastructure that helps companies create, secure and manage mobile
applications that connect back-end data sources to mobile devices (see Figure 1). This mobile enterprise application platform enables you to respond strategically as your device type and data source needs evolve, whether because of corporate acquisitions or system or technology upgrades.
The main components of the Sybase Unwired Platform are:
• Sybase Unwired WorkSpace, which provides a graphical environment for developing the data aspects of mobile applications using Mobile Business Objects
• Mobile Workflow Forms Designer, which enables architects to mobilize workflows and business processes quickly using hybrid Web container technology
• Sybase Control Center®, which allows administrators to administer, manage and monitor Sybase Unwired Platform• Sybase Unwired Server, the middleware component, which provides the runtime infrastructure
The key technical features of the Sybase Unwired Platform include:
• Heterogeneous native device development: iPhone®/iPad®, Windows Mobile, Windows 32 laptops/tablets, BlackBerry®• HTML/CSS/JS-based development for workflow applications: iPhone/iPad, Windows Mobile, BlackBerry, Android• 4GL rapid application development (RAD) tooling and data source integration• Out-of-the-box integration with enterprise applications (such as SAP® or databases) and a full Web services stack• Ability to mobilize multiple applications and business processes• Integrated device management and security
Figure 1.
moBile applicatioN developmeNtThe primary considerations you must address when developing mobile applications are data and its associated
synchronization, the device-resident presentation and business logic. The Sybase Unwired Platform provides the tools developers need to focus on each of these requirements. At the root of the Sybase Unwired Platform development paradigm is the separation between the:
• data tier and its link with the enterprise information system (EIS), and the• user interface and business logic of the application.
Management Console
ControlDevice and server
management and security
Android(Mobile Workflow only)
BlackBerry
iPhone
iPad
Windows
Windows Mobile
ConsumeHeterogeneous mobile devices
ConnectHeterogeneous
data sources
Create
Eclipse
Databases
WebServices
SoftwareApplications
MobileBusiness Objects
Workflows
NativeApplications
Sybase Unwired Platform
2
Sybase Unwired Platform provides tools that enable mobile application development in both these domains (see Figure 2). To address the data aspects of the mobile application, the Sybase Unwired Platform uses mobile business objects (MBO). MBO development refers to defining object data models with back-end EIS connections, attributes, operations and relationships that allow filtered data sets to be synchronized to the device. This aspect of Sybase Unwired Platform development is supported within Eclipse.
Sybase Unwired Platform supports the development tasks associated with the user interface and logic in two paradigms. It enables developers to:
• Build native applications using programming languages native to a mobile operating system (or build the application in an integrated development environment, or IDE, using the generated API)
• Build lightweight Mobile Workflow applications using a hybrid Web container-driven approach, in which HTML/CSS/JS drives the application interface and logic.
This paper will help you understand how to develop mobile applications with Sybase Unwired Platform using each of these approaches.
Figure 2.
moBile BuSiNeSS oBject (mBo) developmeNtMBOs encapsulate business process logic
and data into a reusable unit (see Figure 3). The Sybase Unwired Platform includes the Eclipse development environment, which contains tools designed for MBO development and deployment. These Eclipse tools support online and offline access to data mobilization, applications, services and processes.
Figure 3.
2
Develop Mobile
Business Objects
Deploy MobileBusiness
Objects to Unwired Server
GenerateDevice
Object Code
Sybase Unwired Platform Development Task Flow
Sybase Unwired Platform Development Tools
DevelopDevice
Application
Deploy and Test on
Emulator
Deploy and Test on Device
Unwired WorkSpace Workflow Development Tool (Eclipse)
Native Device Application Development Tools
BlackBerry – Eclipse JDE Plug-in
Windows – Visual Studio
Windows Mobile – Visual Studio
iOS – Xcode
iOSAndroid BlackBerryWindows Mobile
Unwired WorkSpace MobileBusiness Object Development Tool (Eclipse)
BlackBerryJava
iOSObjective C
WindowsC#
Windows MobileC#
Subset Personalize Mobilize
Enterprise System Device Representation
3
The development approach to back-end mobile data models can be either ”top-down” or ”bottom-up.” In the top-down approach, developers use the Mobile Application Diagram and palette to launch a set of wizards that create MBOs with operations and attributes the client wants to have, eventually binding the MBOs to the data source. In the bottom-up approach, developers drag and drop a data source to create the MBO directly from the data source with immediate binding. Developers either define MBO attributes and operations without immediately binding them to a data source, or define them from and bind them to a data source. Both methods use similar steps:
1. Connect to back-end data sources.2. Connect to Sybase Unwired Server.3. Create mobile application projects.4. Create MBO attributes and “create, update and delete” (CUD) operations.5. Attach MBOs to back-end data sources.6. Edit, rename, delete, move, copy, group and view MBOs.7. Perform additional MBO design activities — create logical roles, search, and so on.8. Deploy MBOs to Sybase Unwired Server.
Figure 4.
You have two options for creating an MBO and binding to a data source immediately:
1. Drag and drop the data source onto the Mobile Application Diagram (as seen in Figure 4) which launches the appropriate wizards and automatically creates bindings based on the selected data source.
2. Create an MBO and its operations and attributes using the Mobile Application Diagram and palette, which launches a set of wizards and allows you to bind them directly to a data source.
To create an MBO and defer data source binding:
1. Create an MBO and its operations and attributes using the Mobile Application Diagram and palette. After you define the data source, bind the MBO to it from the Properties view.
2. Create attributes and operations for mobile business objects, create relationships between mobile business objects, bind them to a back-end data sources and modify and test them.
The last step in the MBO development process is to create a deployment package that contains the mobile application, including mobile business objects, role mappings, server connection mappings and other MBO-related artifacts.
Once your development package is complete, deploy it to Sybase Unwired Server. Optionally, you can create a deployment profile that enables you to manage multiple deployment packages.
4
Using the preview capabilities within MBO development tooling, developers can do preliminary tests of the MBOs and visualize the data that will be available on the device.
moBile BuSiNeSS oBject developmeNt iN eclipSeSybase Unwired WorkSpace, which enables developers to model MBOs, is a plug-in in the Eclipse development
environment. Experienced Eclipse developers are familiar with Eclipse’s consistent use of windows, explorers, views, wizards and preferences. Developers new to Eclipse can use the online help, samples and tutorials of Sybase Unwired WorkSpace to become familiar with MBO and device application development.
device applicatioN developmeNt Sybase Unwired Platform supports two main modes of application development when creating the user interface
and logic. These two modes are hybrid Web container-based development and native application development.
Hybrid Web container-based applications are appropriate for extensions of business processes or workflows such as approvals or requests and other lightweight applications.
Native application development makes sense when:
• Complex business logic is needed• Device services integration is intrinsic to mobile applications• User interface expectations depend on device-specific capabilities• No boundaries other than what is provided natively by the mobile operating system are required • Ability to evolve with mobile operating system is required
The development lifecycle for native device applications, which you can perform in parallel with back-end MBOs, includes:
1. Develop device applications2. Generate code and application3. Deploy application to simulator4. Debug/test against simulator5. Configure Sybase Afaria® device management platform to provision application
Afaria is an optional component that is separately licensed and only supported on 32-bit hosts. You can use Afaria with Sybase Unwired Server to perform advanced mobile device management, extended device security and provisioning in your production environment.
However, because of platform requirements for Afaria and Unwired Platform, Afaria must be installed on separate hosts.
hyBrid weB coNtaiNer–BaSed developmeNt (moBile workFlowS)In Hybrid Web container-based development, the application is made up of HTML/CSS/JS and the device has a single
container that interprets this Web content (see Figure 5). This container needs to be deployed once and, from then on, multiple application metadata can be deployed automatically without having to generate any code.
Figure 5.
Connect Data SourceIntegration
SybaseUnwiredPlatform
Server
HybridWeb
ContainerDeployMBO
DeployWorkflow
Sybase Unwired WorkSpace
5
Business processes such as alerts, time recording and travel requests require immediate action, but these messages are generally accessible only with desktop or laptop computers and may not be fulfilled in a timely manner. However, mobile workflows allow users to complete pre-defined business processes swiftly (see Figure 6). Using a Web standards–driven application paradigm, Sybase Unwired Platform hybrid Web container enables the rapid development of mobile workflows, in which existing enterprise business processes or workflows can be extended to a mobile device relatively easily so that decisions can be made at any instant on a mobile device (see Figure 7).
Sybase Unwired Platform has primarily two kinds of workflow models — server-initiated and device-initiated. These models can co-exist within one package.
In the server-initiated workflow model, for example, a manager receives a request — perhaps an approval for leave. The request is initiated by a notification from the back-end system, where Sybase Unwired Platform receives e-mail or notifications from a master account. Sybase Unwired Platform, in turn, delivers a message to an individual device based on configured distribution and MBO extraction rules.
In the device-initiated workflow model, the user sends a message, such as an approval for an expense report. Users can open workflow forms on their mobile devices and enter data that can be used either for kicking off an enterprise workflow or continuing a step in an already executing workflow.
Development is enabled through a WYSIWYG design tool that binds the decisions and actions to MBOs. Both approaches are offline enabled but when real-time information is needed, data can be retrieved in an online model from the back-end. Figure 6.
Sap workFlow moBilized uSiNg SyBaSe uNwired platForm
Figure 7.
Employee Initiates
Travel Request
Manager Receives
Notification
CheckAmount
NotifyEmployee
Notify Manager
Manager Logsinto WEB UI
ApproveSmall
Amounts
ManagerApproves/
Rejects
Employee uses Mobile Workflow on
Device to Initiate Travel Request
Manager Receives a WorkflowNotification on Device
Manager Views the
Details
Manager Approves or
Rejects
www.sybase.com
Sybase, Inc. Worldwide HeadquartersOne Sybase DriveDublin, CA 94568-7902U.S.A1 800 8 sybase Copyright © 2011 Sybase, Inc. All rights reserved. Unpublished rights reserved under U.S. copyright laws. Sybase, the
Sybase logo, Afaria and Sybase Control Center are trademarks of Sybase, Inc. or its subsidiaries. ® indicates registration in the United States of America. SAP and the SAP logo are the trademarks or registered trademarks of SAP AG in Germany and in several other countries. All other trademarks are the property of their respective owners. 08/11
iPad and iPhone are registered trademarks of Apple Inc.
Native applicatioN developmeNtIn native application development, the application is based on compiled code that is specific to a particular mobile
operating system. An iPhone application, for example, is developed in Objective C, a Windows Mobile application is developed in C#, and so on. Native application development provides the most flexibility in terms of leveraging the device services to their fullest potential, but each application must be provisioned individually after compilation, even for minor changes.
Figure 8.
Developers use the standard IDE for native application development (see Figure 8) and can use the generated code based on the MBO. You will build the business logic and user interface pieces of the mobile application in your IDE of choice. iPhone will use XCode, Windows Mobile will use Visual Studio, and BlackBerry will use BlackBerry Eclipse plug-in. When building high-performance production applications, the recommended approach for Sybase Unwired Platform is to use native IDEs, such as XCode and Visual Studio, to leverage the MBO API.
SummaryThe flexible, open Sybase Unwired Platform infrastructure offers development teams many options to create
and manage mobile applications that connect heterogeneous back-end data sources to mobile devices. Sybase Unwired WorkSpace provides a graphical environment for developing the data aspects of mobile applications. Device application developers can work in a GUI environment using the Unwired WorkSpace Mobile Workflow Forms Designer, or use native tools to bind to the Object API programmatically. Compatible with Eclipse, Visual Studio, and other tools, Sybase Unwired Platform enables development teams to build mobile applications that use enterprise data sources quickly and effectively.
Connect
SybaseUnwiredPlatform
Server
MBOAPI
DeviceGUI
DeployMBO
GenerateCode
GenerateDefault GUI
SybaseUnwired WorkSpace
Data Source Integration Device-Specific Development
SDK
Customize