43
MOB262 Building Synchronized Mobile Apps with Sybase Unwired Platform

MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

Embed Size (px)

Citation preview

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 1/44

MOB262 Building Synchronized Mobile Apps with SybaseUnwired Platform

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 2/44

© 2012 SAP AG. All rights reserved.

Disclaimer

This presentation outlines our general product direction and should not be relied on in making a

purchase decision. This presentation is not subject to your license agreement or any other agreemenwith SAP. SAP has no obligation to pursue any course of business outlined in this presentation or todevelop or release any functionality mentioned in this presentation. This presentation and SAP'sstrategy and possible future developments are subject to change and may be changed by SAP at anytime for any reason without notice. This document is provided without a warranty of any kind, eithexpress or implied, including but not limited to, the implied warranties of merchantability, fitness fparticular purpose, or non-infringement. SAP assumes no responsibility for errors or omissions in t

document, except if such damages were caused by SAP intentionally or grossly negligent.

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 3/44

Introduction

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 4/44

© 2012 SAP AG. All rights reserved.

SAP mobile platform

SAP, Partner, and Custom Apps

SAP Mobile Platform

Presentation Frameworks

Third Party App Dev ToolsSAP App Dev Tools

Native Apps

HybridContainer Apps HTML5 Apps SMS Apps

Application Services

Foundation ServicesNotificationAuthentication oData ProxyApp Lifecycle

ManagmentData Sync &

Caching …

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document ikind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

SAP Business Suite Third Party AppsDatabasesSybase 365

SAP NetWeaver Gateway

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 5/44© 2012 SAP AG. All rights reserved.

Unwired Platform - Introduction

SQL (JDBC)

WebService

REST

BAPI (JCo)

Odata

Netweaver Mobile

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document isprovided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 6/44© 2012 SAP AG. All rights reserved.

BackendConnectivity

Online Apps

Sync Apps

SybaseUnwired Platform

Container Apps

Unwired Platform - Application Types

Online Apps• Easy SAP dataconsumption

• Push

Synchronized A• Offline & Online• Data on device• Data protection• Push

Container Apps• HTML5 UI• Cross platform• Offline & Online

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document isprovided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 7/44© 2012 SAP AG. All rights reserved.

Questions frequently asked by customers/partners

What parameters should I conswhile I model my application?

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 8/44© 2012 SAP AG. All rights reserved.

Most important part of data mobilization is the data modeling. Great care has to be taken during

the data modeling• Data Modeling is most often the biggest part of a mobile project• It defines the actual application and its functions

Data Modeling is a complex topic• Data Modeling best practices white paper

http://www.sybase.com/detail?id=1096050&contentOnly=true• Data Modeling Blog entry and video

http://blogs.sybase.com/mobiledevelopment/2011/10/mbo-modeling-best-practices-2/

Application Data Modeling

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 9/44

MBO Properties andBest Practices

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 10/44© 2012 SAP AG. All rights reserved.

MBO Properties And Best Practices

Synchronization

Load Arguments

Cache Groups

Operation Cache Policy

Object Queries

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 11/44© 2012 SAP AG. All rights reserved.

Best Practices: MBO Definition

1. Every attribute is used by the mobile application

2. MBO instance = database row (must fit within a page)• Large row size requires larger page size impacting performance on device and synchronization• Do not define a MBO with more than 50 attributes• Do not use STRING data type. Instead, use STRING(n) to define the maximum string length (STRIN

defaults to 300)• Promotion of VARCHAR(n) to LONG VARCHAR can occur during code generation if the specified

size is less than the calculated maximum row size• Use larger page size during code generation and run with a smaller one on device if n

lower than maximum

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 12/44

© 2012 SAP AG. All rights reserved.

Best Practices:MBO Definition – DB Page Size

Database page size governed by maximum row size derived from

MBO definition • Lots of attributes or lengthy ones larger rows larger page

size• On some devices like the Blackberry, more than memory is

consumed – object handles• Based on our observations, page sizes between 1k – 4k seems

to provide best overall performance

• Do not forget to account for non Latin encoding which will resultin large row size

• Large rows means less rows per page and more pages must befetched or cached. For MBOs used in list views, this can impactthe UI response

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 13/44

© 2012 SAP AG. All rights reserved.

Load Arguments

Control the amount of data refreshed between the EIS and CDB

Creates its own partition in the CDB based on load argument value (partition key)

Can be paired with synchronization parametersUser will supply values for the argument(s)

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 14/44

© 2012 SAP AG. All rights reserved.

Allows device to specify data set to download to the device

Sync parameter can either be mapped as a load parameter or set as a filter in UnwiredWorkspaceSync parameter data sets are cumulative

Multiple data sets are stored in client databaseMultiple data sets are synchronized

Sync parameters are generated as separate classes

To synchronize new data set:Call getSynchronizationParameters static method on MBOSet properties on parameters objectCall save on parameters objectCall <Package>DB.synchronize

Synchronization Parameters

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 15/44

© 2012 SAP AG. All rights reserved.

Example: Load and Synchronization Parameters

Definition: SELECT * FROM Customer WHERE State = ?

Data Source Type: SampleDB databaseFill: Data is retrieved by executing the Load Operation with the load parameter set to „CA‟

Filter: This MBO has one synchronization parameter [city]Mobile application sets the synchronization parameter prior to performing synchronization to „Santa Clara

Customer ID Name Address City 1 Intel 1 Intel Drive Santa Clara 3 Ultra 1 Ultra Lane Santa Clara C4 AMD 1 AMD Ave Santa Clara

Customer ID Name Address City

1 Intel 1 Intel Drive Santa Clara 2 Cisco 1 Cisco Way San Jose 3 Ultra 1 Ultra Lane Santa Clara 4 AMD 1 AMD Ave Santa Clara 5 Oracle 1 Oracle Lane Redwood Shores

6 Qualcomm 1 Qualcomm Way San Diego

C a c

h e

D B

C l i e n

t D B

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 16/44

© 2012 SAP AG. All rights reserved.

Best Practices:MBO Definition - Queries

Object queries in HWC run on server against cache database

Object queries in Object API runs on client side

Complex Queries on device are expensive, even on iPhone• Large MBO instance leads to slow and expensive object instantiation• For one many or one ↔ many relationship where count(many) is large

– Navigation and cascade operation can be expensive

• Does the data model enable application to use simple queries for most use cases? – Simple joins are expensive on mobile devices. This is true even for iPhone and the like

• Indexes slow down synchronization and updates

Object query returns object(s) and dynamic query returns result set.Use dynamic query to bypass object instantiation and selectively retrieve a subset of attributes

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 17/44

© 2012 SAP AG. All rights reserved.

Use the minimum number of indexes to support queries used by the mobile application

Index slows down update operations on device and synchronization, especially on low end devicUncheck findByPrimaryKey and FindAll queries generated for each MBO by default if they are needed by the mobile application

Best Practices:MBO Modeling - Indexes

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 18/44

© 2012 SAP AG. All rights reserved.

Best Practices:MBO Modeling – Synchronization Groups

Use synchronization group to add flexibility on what to synchronize

Controls which MBOs to synchronize at a particular timeSupports prioritization i.e. get service tickets without detailsLimits the amount of data during synchronization for customers facing impaired connectivity to avoid repeatrying to complete a large synchronizationThink twice if the synchronization group has more than 5 membersRun time flexibility available by combining synchronization group toreduce overhead

Relationship across synchronization groups may result in incompleteobject graphs on the client

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 19/44

© 2012 SAP AG. All rights reserved.

Best Practices:MBO Modeling – Cache Groups

Use cache group to control what and when to load data into CDB

Break up expensive data retrievals from backendRelationship across cache group may result in incomplete object graphs in CDBMapping cache group to synchronization group reduces unnecessary refresh not related to the triggeringsynchronization

Avoid circular dependencies between cache groups.Similarly, avoid driving the load of an MBO in one cache groupbased on the attributes of an MBO in another cache group

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 20/44

© 2012 SAP AG. All rights reserved.

Best Practices: Data Loading Design

Know Thy Data

Reference vs. Transactional: Mostly Read vs. Read/WriteShared vs. PrivateSources of changes: coherency implicationsUpdate frequency and freshness requirement

Access pattern: peak and valley or distributedData volume: size does matter

Know Thy Data SourcesEfficiency of interface (JCo, WS)Push vs. Pull (DCN)Reaction to peak load

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 21/44

© 2012 SAP AG. All rights reserved.

Best Practices: Data Loading Design

Do not use existing API just because it is there

Evaluate its efficiency for loading data into CDBDevelop custom mobile adaptation if appropriateLoad what is needed not what is provided

Use an efficient interface (protocol) for high data volume

Use DCN for very large data volume

Avoids large data transfer and differential calculationDoes not help with initial loading

Use multiple partitions to split the loading whenever possiblePrivate data should consider the use of “partition by requester and device identity” or equivalentDevelop backend API to load by partition if appropriate

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 22/44

© 2012 SAP AG. All rights reserved.

Best Practices:Cache Policy – On Demand

Refresh triggered by synchronization

Zero cache interval Allows latest data from backend to be retrievedUnless data volume is small, should be coupled with partitioningUser synchronization activities allow changes to be detected

Non zero cache interval

Reduce data loading invocations against backendCoupled with partitioning to reduce amount of data to be loaded per invocationUser synchronization activities + cache interval expiration allow changes to be detectedChances of inconsistency with backendIncrease parallelism when for shared data

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 23/44

© 2012 SAP AG. All rights reserved.

Best Practices:Cache Policy - Scheduled

Automatic refresh based on interval

Cache interval is base case notification granularityPartitioning helps to spread out initial data loadingMatch backend data update frequency especially for reference data

Chances of inconsistency with backend

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 24/44

Application DevelopmentSybase Unwired Platform

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 25/44

© 2012 SAP AG. All rights reserved.

Native Object API MBO

MBO Properties include:

Attributes – Data Source, Type, Connection Settings

Operations – Bind to Existing Operations, or Add New

Relationships – Mappings, Complex Types

Object Queries – Query methods generated in Object Classes

Synchronization Settings – Rules, Partitions

S h i d li i l di

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 26/44

© 2012 SAP AG. All rights reserved.

SAP

• BAPI

• Netweaver Mobile

• Webservice

WebService

SQL DB

Data Model

SybaseUnwired Platform

Messaging Engine

SU

M

Da

A

Modeling of Data Deploy Data Modelto SUP

Source CodeGeneration

1 2 3 4

B a c

k E n

d

I n t e g r a

t i o n

CodeModel

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document isprovided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

Synchronized Applications Development Paradigm- Development Flow

S h i d A li i

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 27/44

© 2012 SAP AG. All rights reserved.

Synchronized Applications- Examples

SAP rich mobile apps

Fully offline capableSeamless offline/online functionalityFeature rich with local data storageHighly complex applications

Areas• SAP CRM Sales• SAP Field Service• SAP Retail Execution• SAP EAM Workorder

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document isprovided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 28/44

© 2012 SAP AG. All rights reserved.

SUP provides generated code and libraries to make accessing MBOs in

client applications easyGenerates C# for Windows/Windows Mobile, Java for Blackberry,Objective C for iOS, Java for AndroidInfrastructure takes care of: – Security (encryption, authentication, authorization)

– Persistence – Efficient transfer of data – Backend integration

Frees the developer to concentrate on UI and business logic

Object API Applications

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 29/44

© 2012 SAP AG. All rights reserved.

Object API Application Architecture

Custom Application Code

Generated Object API

SUP Client Libraries

Persistence

Database

Synchronization Security

Messaging

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 30/44

© 2012 SAP AG. All rights reserved.

MBO ClassOne class generated for each MBO in package.Class representing the MBO containing all the defined properties,operations, and relationships on the MBO.Contains methods for loading objects from the persistence storage.

Package DB ClassContains methods for accessing the connection profile, sync profile,accessing database, synchronizing.Generated code for creating databaseNaming convention: <Package Name>DB

Generated Classes

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 31/44

© 2012 SAP AG. All rights reserved.

PersonalizationParameters Access to personalization keys MBOWrapper around ServerPersonalization, ClientPersonalization,SessionPersonalization classes

Other classes are internal

Generated Classes

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 32/44

© 2012 SAP AG. All rights reserved.

MBOs are saved in tables in database:UltraLite: Windows, Windows MobileUltraLiteJ: Blackberry, AndroidSQLite: iOS

Created automatically during initialization

Uses surrogate key (long integer) for primary key

Can be encrypted

Client Database

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 33/44

© 2012 SAP AG. All rights reserved.

1. Client calls synchronize

2. Client connects to server

3. Server authenticates client

4. Client finds all records changed since last sync

5. Client uploads operation records to server

6. Server may perform cache refresh (on demand cache group)

7. Server replays operations and saves results to cache database

8. Server detects changed records and sends to client

RBS Synchronization

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 34/44

© 2012 SAP AG. All rights reserved.

Synchronization Sequence

Client Application

ClientDB

7UpdateDatabase

1Synchronize

Unwired Server

CacheDB

2

Cache Ref

3

4

Resul

StoreResults

ImportChanged

Records6

* Steps 2 to 4 onlydemand cache refr

5ChangeDetection

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 35/44

© 2012 SAP AG. All rights reserved.

The Sybase Unwired Platform Client Object API consists of generated business object classesthat represent mobile business objects (MBOs) that are designed and built in the UnwiredWorkSpace development environment. Device applications use the Client Object API to retrievedata and invoke mobile business object operations.

Refer to these sections for more information on using the APIs described in DeAndro id Objec t API Appl ica t ions > Customiz ing the Ap pl icat ion Us ing the Objec t API

Client Object API Reference Use the Sybase Client Object API Javadocs as a Client Object API reference.

Application APIs The Application class, in the com.sybase.mobile Java package, manages mobile applicationregistrations, connections and context.

Client Object APIs (1/5)

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 36/44

© 2012 SAP AG. All rights reserved.

Connection APIs The Connection APIs contain methods for managing local database information, establishing aconnection with the Unwired Server, and authenticating.

Synchronization Profile The Synchronization Profile contains information for establishing a connection with theUnwired Server's data synchronization channel where the server package has been deployed.The com.sybase.persistence.ConnectionProfile class manages that information. By default,this information includes the server host, port, domain name, certificate and public key that arepushed by the message channel during the registration process.

Authentication APIs You can log in to the Unwired Server with your user name and credentials and use the X.509certificate you installed in the task flow for single sign-on.

Client Object APIs (2/5)

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 37/44

© 2012 SAP AG. All rights reserved.

Personalization APIs Personalization keys allow the application to define certain input parameter values that arepersonalized for each mobile user. Personalization parameters provide default values for synchronization parameters when the synchronization key of the object is mapped to thepersonalization key while developing a mobile business object. The Personalization APIsallow you to manage personalization keys, and get and set personalization key values.

Synchronization APIs You can synchronize mobile business objects (MBOs) based on synchronization parameters,for individual MBOs, or as a group, based on the group's synchronization policy.

Log Record APIs The Log Record APIs allow you to customize aspects of logging.

Client Object APIs (3/5)

l b ( )

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 38/44

© 2012 SAP AG. All rights reserved.

Change Log API The change log allows a client to retrieve entity changes from the back end. If a clientapplication already has a list view constructed, it simply needs to add, modify, or delete entriesin the list according to the change logs.

Security APIs The security APIs allow you to customize some aspects of connection and database security.

Callback and Listener APIs The callback and listener APIs allow you to optionally register a callback handler and listen for device events, application connection events, and package synchronize and replay events.

Query APIs The Query API allows you to retrieve data from mobile business objects, to page data, and toretrieve a query result by filtering. You can also use the Query API to filter children MBOs of aparent MBO in a one to many relationship.

Client Object APIs (4/5)

Cli Obj API (5/5)

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 39/44

© 2012 SAP AG. All rights reserved.

Persistence APIs The persistence APIs include operations and object state APIs.

MetaData and Object Manager API The MetaData and Object Manager API allows you to access metadata for database, classes,entities, attributes, operations, and parameters.

Exceptions Reviewing exceptions allows you to identify where an error has occurred during applicationexecution.

Client Object APIs (5/5)

Sybase Unwired Platform

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 40/44

© 2012 SAP AG. All rights reserved.

20%

80%

y- reduces TCO and simplifies mobile development

X Number of projects

Application Development• Windows Mobile

• Windows• BlackBerry• iPhone, iPad, iPod• Android

Platform Deliveries per Project• Connection management• Data security (on device and OTA)• Version control• Seamless online/offline use• Data synchronization• Application integration• Device detection and management• Logging & reporting• Rollout & On-Boarding (with Afaria)

=

This presentation and SAP„s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document isprovided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement

SAP M bilit d i li ti d l

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 41/44

© 2012 SAP AG. All rights reserved.

SAP Mobility and various application models.

Applications Datamodels

Light Moderate

Use Case Consumer B2C Productivity B2E, B2B Process B2E

Important Applicationcharacteristics

• Multi-platform device Support• Very high scalability• Online/ Minimal local storage• Application on-boarding

• Multi-platform device support• Large scalability• Online/Offline• Enterprise Security integration• Backend Application

Integration

• Larg• Sync

persi• Back• Tran

Important ArchitectureElements

• Web/HWC/Native• Direct backend access-ODP• Online/Message-based• Auto provisioning

• HWC/Native• ODATA/MBO• Messaging/Sync• Self-registration

• Nativ• MBO• Mess• Devi

F rther Inform tion

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 42/44

© 2012 SAP AG. All rights reserved.

Further Information

SAP Education and Certification Opportunitieswww.sap.com/education

Watch SAP TechEd Onlinewww.sapteched.com/online

SAP Public Web

scn.sap.comwww.sap.com

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 43/44

FeedbackPlease complete your session evaluation for MOB262 .

Thanks for attending this SAP TechEd session.

© 2012 SAP AG All rights reserved

7/29/2019 MOB262-Building Synchronized Mobile Apps With Sybase Unwired Platform

http://slidepdf.com/reader/full/mob262-building-synchronized-mobile-apps-with-sybase-unwired-platform 44/44

© 2012 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without the expresspermission of SAP AG. The information contained herein may be changed without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.

Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio are registered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, Systemz10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, Power Architecture, Power Systems, POWER7,POWER6+, POWER6, POWER, PowerHA, pureScale, PowerPC, BladeCenter, System Storage, Storwize,XIV, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere,Tivoli, Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation.

Linux is the registered trademark of Linus Torvalds in the United States and other countries.

Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registered trademarks of AdobeSystems Incorporated in the United States and other countries.

Oracle and Java are registered trademarks of Oracle and i ts affiliates.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems Inc.

HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®, World Wide WebConsortium, Massachusetts Institute of Technology.

Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C, Retina, Safari, Siri,and Xcode are trademarks or registered trademarks of Apple Inc.

IOS is a registered trademark of Cisco Systems Inc.

RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerry T orch, BlackBerryStorm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry App World are trademarks or registeredtrademarks of Research in Motion Limited.

© 2012 SAP AG. All rights reserved.

Google App Engine, Google Apps, Google Checkout, Google Data API, Google MGoogle Mobile Updater, Google Mobile, Google Store, Google Sync, Google UpdGoogle Mail, Gmail, YouTube, Dalvik and Android are trademarks or registered tr

INTERMEC is a registered trademark of Intermec Technologies Corporation.

Wi-Fi is a registered trademark of Wi-Fi Alliance.

Bluetooth is a registered trademark of Bluetooth SIG Inc.

Motorola is a registered trademark of Motorola Trademark Holdings LLC.

Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects ESAP HANA, and other SAP products and services mentioned herein as well as thetrademarks or registered trademarks of SAP AG in Germany and other countries.

Business Objects and the Business Objects l ogo, BusinessObjects, Crystal ReportsIntelligence, Xcelsius, and other Business Objects products and services m entionerespective logos are trademarks or registered trademarks of Business Objects Softwis an SAP company.

Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Smentioned herein as well as their respective logos are trademarks or registered tradSybase is an SAP company.

Crossgate, m@gic EDDY, B2B 360°

, and B2B 360°

Services are regisin Germany and other countries. Crossgate is an SAP company.

All other product and service names mentioned are the trademarks of their respecticontained in this document serves informational purposes only. National product sp

The information in this document is proprietary to SAP. No part of this document mor transmitted in any form or for any purpose without the express prior written perm