Your SlideShare is downloading. ×
0
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile Apps Part 2

1,989

Published on

Technology options for building apps with the SAP Mobile Platform …

Technology options for building apps with the SAP Mobile Platform

Agenda:
Why we need a platform?
Platform components
Review
Deployment options

Published in: Technology
3 Comments
9 Likes
Statistics
Notes
No Downloads
Views
Total Views
1,989
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
25
Comments
3
Likes
9
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Technology options forbuilding apps with the SAPMobile Platform`RIG - Paul Todd
  • 2. © 2012 SAP AG. All rights reserved. 2AgendaWhy we need a platform?Platform componentsMBO SDKODP SDKAgentry platformREST platformReviewDeployment options
  • 3. Technology options for buildingapplications with theSAP Mobile PlatformStyles of Mobile Development that are Relevant Today
  • 4. © 2011 SAP AG. All rights reserved. 4Mobile application deployment - Checklist• What is / are the problem(s) that the mobile application is trying to solve ?• What are the systems involved ?• What data do you need from the systems ?• How will you secure your mobile system ?• What are the mobile devices that will use the application ?• How will the mobile devices connect ?• How will you manage / upgrade the application ?
  • 5. © 2011 SAP AG. All rights reserved. 5Non-scalable approach to building Mobile AppsVendor 1 AppVendor 2 AppVendor 3 AppVendor n AppVendor 1 ServerVendor 2 ServerVendor 3 ServerVendor n ServerBackend System1Backend System2Backend System3Device T1Device T2Device T2Device T1Device T2Device T2Device T1Device T2Device T2Device T1Device T2Device T2
  • 6. © 2011 SAP AG. All rights reserved. 6Mobile Enablement FunctionsUnderstanding the total pictureMobile EnablementFunctionsRepresents 80% of the total cost ofimplementing your own infrastructureCostly and time consumingRequires skill sets which are not core tobusinessSecure connectivity to business systemsEnd to end security and authenticationApplication versioning and lifecycle managementMulti-device and multi-OS platform supportUsage analytics and reportingEnd to end traceabilityRepresents 20% of the total cost of deploying a mobilestrategyCan be accelerated with partners and off-the-shelfapplications
  • 7. © 2011 SAP AG. All rights reserved. 7The power of a platformOptimization, reusability, maintainability, scalabilityThere is no one-size-fits-all approach, but there are several use cases with different recurringarchitecture patterns that must be supported consistentlyServicesplatformfor mobileB2EB2BB2CChallenges and requirements Qualities and featuresSkill-set diversityApplication diversityRapid evolutionHeterogeneous landscapeEnable world-class toolsReusable platform servicesDevice/platform agnosticEmbrace open standards
  • 8. © 2011 SAP AG. All rights reserved. 8The platform value propositionOpen platformmillions of developersFlexible frameworknative, HTML, or businessanalystsSDK and toolsfast and productiveReusable services andframeworksconsistent and extensibleDeveloperOpen platformeasily extensibleSeamless integration andcentralized managementoptimized TCOIndustry standard securityassurance and controlApp platform + app mgmtend-to-end mobile lifecyclemanagementAdminPlatform approachconsistent app experienceSelf service portaluser empowermentBYOD enableduser choiceEnterprise app storediscover new apps andcapabilitiesUser
  • 9. © 2011 SAP AG. All rights reserved. 9Mobile Platform Development Tools / SDKB2E appsSAP’s end-to-end solution strategyA comprehensive enterprise mobile portfolioSAP/Sybase build EcosystemB2C appsPartnerBanking RetailTravel &hospitalityMedia &entertainmentTelcoAutomotiveSAP Mobile PlatformIndustry LoB Analytics PartnerCustomMobile application platform with development tools/SDK and frameworkMobile EnterpriseApplication Platform (MEAP)Mobile ConsumerApplication Platform (MCAP)On-premise SAP HANA CloudSenchaAppceleratorPhoneGap
  • 10. © 2011 SAP AG. All rights reserved. 10SAP Mobile PlatformMaster brand for unified platformIn 2013, the SAP Mobile Platform will deliver multiple options for customers:DeploymentB2E / B2CApp architecturesAgentryMobiliserSUPSAP Mobile PlatformNativeHybridMetadata drivenSMS-basedCloud versionOn-premise versionEnterprise editionConsumer editionConsumerEnterpriseSAP Mobile PlatformiOS Android BlackBerry Windows 8
  • 11. © 2011 SAP AG. All rights reserved. 11SAP Mobile Platform - OverviewChallenges to mobility solutionsLack of upfront planning – Inability or high cost to expandLack of integrated solutionsManaging and tracking device applicationsReporting and troubleshootingAnd more…SAP Mobile Platform supports…Supports variety of backend EIS and various device typesProvides different types of authentication modulesCentralized management of device applicationsReporting and troubleshootingOptions for Offline, Hybrid, Online mobile applications
  • 12. © 2011 SAP AG. All rights reserved. 12SAP Mobile PlatformProduct descriptionSAP Mobile Platform is a mobile application development platform that enables developers to simply andquickly build B2E, B2B and B2C applications that connect business data to mobile workers on any device,at any timeConnect to any SAP or non-SAP data source andapplicationCreate amazing mobile applications using native andthird-party IDEs and SAP SDKs and libraries:authentication, data integration, synchronization,3D visualization, and reusable componentsDeploy native, hybrid and metadata driven mobileapplications from the device of their choice:iOS / Android / BlackBerry / Windows 8 /Windows Phone 8 / Windows MobileSAP Mobile PlatformSAPHANASAP Systems 3rd PartyNative, Hybrid, Meta-Data Driven, SMS AppsiOS Android BlackBerry Windows 8
  • 13. © 2011 SAP AG. All rights reserved. 13SMP 2.3 Software Architecture
  • 14. © 2011 SAP AG. All rights reserved. 14Client ParadigmsWhy we support them all?PlayerNativeHWCSMSAgentry 6.xSMP 2.2Mobiliser 5.xAgentryMobiliser 5.xAgentryMobiliserSUP SUPSMP 2.3Q3 2013SMP 3.0 RTCQ4 2013
  • 15. © 2011 SAP AG. All rights reserved. 15Architectural Break-down of a Mobile Solution•Player•Hybrid Web Container•Native•SMS•Development Tools•User Onboarding•Authentication & Authorization•Connection Management.•Application Settings•Resource Bundles•Encryption Services•Central Monitoring, Logging,Tracing•Web-services•Synchronization•SMS•W3C SOAP•OData•JSON•Mobilink Protocol•Angel Protocol•SAP JCO•JDBCMobileApplicationConsumptionModelMobileEnablementFunctionsUIImplementationModel
  • 16. © 2011 SAP AG. All rights reserved. 16Player Type ApplicationsPros:Design Once Deploy ManyAuto App UpdatesCodelessOffline CapableCons:On Device Complex CalculationstediousUI Control Set LimitedDevice support limitedGood Use Cases:Field Force AutomationSale Force AutomationsBad Use Cases:Novel UI RequirementsConsumer OrientedPlayer
  • 17. © 2011 SAP AG. All rights reserved. 17Hybrid Web Container ApplicationsPros:Design Once Deploy ManyMassive Development CommunityLarge Device SupportCons:No implicit Sync Model for OfflineApple RulesResource Intensive - > User XPGood Use Cases:Lightweight workflow appsOnline lookup appsConsumer OrientedBad Use Cases:Heavy process driven apps withoffline requirementsHybrid WebContainer
  • 18. © 2011 SAP AG. All rights reserved. 18Native ApplicationsPros:Maximise PerformanceMaximise User XPDirect Access to PeripheralsCons:ExpensiveSpecialized SkillsRewrite for each Device TypeUpdates require redeployGood Use Cases:Specialized Interfaces (3D)Process Intensive AppsUX importantBad Use Cases:Consumer oriented (cost)Native
  • 19. © 2011 SAP AG. All rights reserved. 19SMS ApplicationsPros:Large Device SupportNo App DeploymentSimple and IntuitiveCons:User XP LimitedSpamCost to userGood Use Cases:mCommerce AppsLoyalty AppsUtility AppsBad Use Cases:Complex process drivenSMS
  • 20. SMP 2.3 Architecture
  • 21. © 2011 SAP AG. All rights reserved. 21SMP High Level Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSMSSMP Platform Components
  • 22. © 2011 SAP AG. All rights reserved. 22SMP SDKs and Development ToolsDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativePlatform Services Mobile SDK’s
  • 23. Technology Options
  • 24. © 2011 SAP AG. All rights reserved. 24SMP Player Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativePlatform Services Mobile SDK’s
  • 25. © 2011 SAP AG. All rights reserved. 25SMP Player Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeMeta DataRepositoryJCOJDBCAgentry EditorSCCJavaIntegrationCodeAgentryRuntimeAgentryAddonTriggers, Stored Proc
  • 26. © 2011 SAP AG. All rights reserved. 26SMP HWC Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativePlatform Services Mobile SDK’s
  • 27. © 2011 SAP AG. All rights reserved. 27SMP HWC Open Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSCCNWGWAny JavaScript UIFramework
  • 28. © 2011 SAP AG. All rights reserved. 28SMP HWC MBO Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSCCSAP Mobile SDK +Any UI FrameworkCacheDBJS APIMBOOperationsQueriesLoad
  • 29. © 2011 SAP AG. All rights reserved. 29SMP Native Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativePlatform Services Mobile SDK’s
  • 30. © 2011 SAP AG. All rights reserved. 30SMP Native Open Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSCCNWGWAny NativeFramework
  • 31. © 2011 SAP AG. All rights reserved. 31SMP Native ODP Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSCCSAP Mobile SDK +NativeODP APIOData ProxyNWGW
  • 32. © 2011 SAP AG. All rights reserved. 32SMP Native MBO Application Software ArchitectureDBERPRFCSOAPWSRESTfulWSODataWSPlayerHybrid WebContainerNativeSCCSAP Mobile SDK +Native FrameworkCacheDBObject APIMBOOperationsQueriesLoadSync
  • 33. MBO Technology
  • 34. © 2011 SAP AG. All rights reserved. 34Mobile Business Object - MBOOverview• Form the business logic by defining the data you want to use from your back-end system and exposing it through your mobile application or Hybrid App.• MBO development involves defining object data models with back-end EISconnections, attributes, operations, and relationships that allow filtered datasets to be synchronized to mobile devices.• Are built by developers who are familiar with the data and transactionalrequirements of the app, and how that app connects to existing data sources.• An MBO is derived from a data source, such as a database server, Webservice, or SAP® server.• Are deployed to SAP Mobile Server, and accessed from mobile deviceapplication client code generated from SAP Mobile WorkSpace.
  • 35. © 2011 SAP AG. All rights reserved. 35Mobile Business Object - MBOOverview• MBOs are created using the SAPMobile WorkSpace graphical tools• Are reusable, allowing you toleverage business logic orprocesses across multiple devicetypes.• Future-proof: when new devicetypes are added, existing MBOscan be used.• Provide a layer of abstraction fromthe SAP Mobile Server interactionwith heterogeneous back-ends/devices, as shown indiagram.
  • 36. © 2011 SAP AG. All rights reserved. 36Mobile Business Objects - MBOArchitectureDeviceBusiness Suite & 3rd PartyBackendSMPMBORepositoryDeviceoptimizedMBOAdmin/Config ToolDevTool for ContentDistributionRulesDataConsolidation(Native & Container/HTML5)Synchronization&MessagingDevTool Apps
  • 37. © 2011 SAP AG. All rights reserved. 37SMP MBO-based App DevelopmentNative Object API:MBO configures server for synchronization, client DB & objects, and generates querymethods in Native Object APIDevelopMobileBusinessObjectsSMP Development Task Flow1Deploy MobileBusinessObjects toUnwired Server2Generate MBOAPI from MBODiagram3 DevelopNativeApplicationusing MBONative SDK4Install nativeapplicationand test inSimulator5Install nativeapplicationand test onDevice6
  • 38. © 2011 SAP AG. All rights reserved. 38MBO – When to useUse the MBO approach when....The App is mission-criticalThe usage scenario is more complex.Users can work on data while fully-offlineServer and client updates are synchronizedVery good for large data volumes and disconnected environmentsThe App has to handle data from multiple EIS’s
  • 39. © 2011 SAP AG. All rights reserved. 39MBO – When not to useDo not use the MBO approach when...Large user base e.g. Consumer AppsOnline Apps – possible but with a lot of overhead
  • 40. HWC Technology
  • 41. © 2011 SAP AG. All rights reserved. 41Hybrid Web Container - HWCOverview• Support simple business processes, such as approvals and requests• Use MBOs to facilitate connection with a variety of enterprise systems• A hybrid web container is developed and deployed to a device, then one ormore workflows are deployed to the container• Supports mobile workflow enablement, which enables mobile device users tooperate as workflow participants, allowing the mobile user to start and respondto back-end enterprise requests within a generic framework• Data is made available using a request-response pattern, withoutsynchronization• Manage a low data volume• Avoid the need for long-lasting, offline, stateful transactions
  • 42. © 2011 SAP AG. All rights reserved. 42Hybrid Web Container - HWCArchitecture• Is the runtime on the device within which Hybrid Apps are executed.• Is a native app designed to process generic function calls from a Hybrid App.• Embeds a browser control supplied by the device OS, which allows you to buildapplications with simplicity of Web development but utilize the power of nativedevice services.• Allows you to create a single HTML5 application that performs advanced,device specific operations on all the different devices.• Write Hybrid Apps in standards-based HTML5, JavaScript and Cascading StyleSheets (CSS). These are technologies familiar to web developers.• This enables Web developers to incorporate open source frameworks and alsoselect their preferred development environment, for example, Sencha andJQuery Mobile.
  • 43. © 2011 SAP AG. All rights reserved. 43Hybrid Web Container - HWCArchitecture
  • 44. © 2011 SAP AG. All rights reserved. 44HWC-based Apps DevelopmentHTML5/JS Container API:MBO configures server mappings, creates HTML5 storage key-value structure, andgenerates request methods in JavaScript APIDevelopMobileBusinessObjectsSMP Development Task Flow1Deploy MobileBusinessObjects toUnwired Server2GenerateJavaScript APIfrom MBODiagram3Develop HybridApplication inUI5, JQM orSencha Touch4Deploy toSCC and testin HWC inSimulator5Deploy toSCC andtest in HWCon Device6
  • 45. © 2011 SAP AG. All rights reserved. 45HWC– When to useUse the HWC approach when....Need to manage a low data volumeProvide a simple user experienceImplement simple business logicAvoid the need for long-lasting, offline, stateful transactionsEnsure secure and reliable transport of data
  • 46. © 2011 SAP AG. All rights reserved. 46HWC– When not to useDo not use the HWC approach when...Need large data volumes on the deviceComplex workflowComplex User Interfaces/ExperienceAccess to native API’s such as NFC
  • 47. OData Proxy SDK
  • 48. © 2011 SAP AG. All rights reserved. 48OData Proxy - ODPOverviewThe SMP OData SDK offers a range of libraries and APIs which you can use tocreate and manage applications.• Supports Android, BlackBerry and iOS platforms and it is based on thenative device SDKs of the platforms. There is an implementation for eachplatform. Native applications installed on the devices allow the client applicationto leverage the support provided by the given platform• Cache data in native device data stores for better performance• Works directly with backend so updates work without delay and possiblesynchronization issues an no business data on the mobile device.• Uses SMP Messaging Protocol that always compressed and stronglyencrypted
  • 49. © 2011 SAP AG. All rights reserved. 49OData Proxy - ODPArchitectureSDK native libraries for iOS, Android and Blackberry.Composed of a number of components:Connectivity - provides support to connect to SMP serverParser – provides support for parsing JSON and XML Odata dataCache – reduce network traffic by caching queries on the deviceSupportability – options to integrate with Solution Manager and AfariaPersistence – allow the storing of data securely on the device.
  • 50. © 2011 SAP AG. All rights reserved. 50OData Proxy - ODPArchitectureClientSpecialized Native ApplicationsOData SDK(Persistence, Caching, ODATA parsing)Messaging(Secure Connectivity, Reliable Messaging)SMP ServerMessaging(Authentication, Mobile Data Delivery(IMO), Push, Message Handlers)SAP GatewayRegistry(App, User, Subscription, Configuration)Http(s) Proxy Connector(Tunneling & URL Re-write, Subscriptions)SMP Glue(Authentication, On-Boarding, Connectivity)Push NotificationsRequests & Response
  • 51. © 2011 SAP AG. All rights reserved. 51ODP-based Apps DevelopmentNative API:ODP API provides support operations and management functionality to easedevelopmentDevelopbackendODataSMP Development Task Flow1Createregistration inSMP2Developapplication3Testapplication4Deploy ontodevice5
  • 52. © 2011 SAP AG. All rights reserved. 52ODP– When to useUse the ODP approach when....No offline synchronization capability is requiredEnsure secure and reliable transport of dataTalking to an internal backend OData serviceRequire enterprise management features
  • 53. © 2011 SAP AG. All rights reserved. 53ODP– When not to useDo not use the ODP approach when...Offline access is required.Application uses complex state based transactionsNo Application Lifecycle Management is requiredNo requirement to securely store data and credentials
  • 54. Player Technology
  • 55. © 2011 SAP AG. All rights reserved. 55Agentry Architecture FundamentalsAgentry ServerAgentryDevelopmentServerApplicationDefinitionsJava LogicAgentry ServerAdministration ClientServerPortSTEPSAgentry EditorEclipsePublish application into theAgentry ServerConnection/Steps can be:Java VMHTTP XMLSQL DatabaseFile SystemAgentry Clientinstalled on themobile deviceATE - Agentry TestEnvironmentANGEL
  • 56. © 2011 SAP AG. All rights reserved. 56Agentry PlayerOverview - ClientClient Player featuresPrebuilt free downloadable binary from app stores.Blackbox approach, no need to change player or rebuilt it.Customization only through metadata (No container customization)Task centric rather than experience centricData stored in filesClients for iOS, Android, Windows Mobile, Blackberry
  • 57. © 2011 SAP AG. All rights reserved. 57Agentry PlayerOverview - MiddlewareMiddleware featuresPrimarily a messaging server , Synchronization is entirely application dependentNo database/caching in middleware,Custom protocol with device communication on TCPOne server instance hosts exactly one applicationScaling through multiple instances using a load balancer (no clustering)
  • 58. © 2011 SAP AG. All rights reserved. 58Agentry PlayerOverview - BackendBackend featuresSupports SQL, Java, HTTP-XML backends.Expects data model to be defined in backend in CRUD pattern.Expects delta computation to be managed in backend in a predefined way.
  • 59. © 2011 SAP AG. All rights reserved. 59StandardBAPIsexchangedataFIREWALLBluetooth (PAN)Network (LAN)WANWireless LANWireless WANSatelliteDial-UpDocking CradleIRDASolution Architecture – SAPEnterprise Meta-Data Driven TechnologySAP ERP®SAP CRM®ConfigurationModuleAdministrationModuleNamespaceAgentry EditorEclipseFIREWALLMETADATA(Application Definition)System ConnectionCommunicationAgentry DevelopmentServerEnhancedTCP/IPAgentry ClientApplication LogicUIApplication FlowConfigurationPeripheral IntegrationCommunicationStorageSAP Add-On
  • 60. © 2011 SAP AG. All rights reserved. 60SMP Player-based Apps DevelopmentPlayer applicationMetadata driven solution means faster deployment and testing.Do backendcustomizationsSMP Development Task Flow1Build workflowAnd screens2Deploy to devenvironment3Test in devenvironmentwith ATE andDevices4Moveapplicationfrom dev toproduction5Roll out toall users6
  • 61. © 2011 SAP AG. All rights reserved. 61Player– When to useUse the Player approach when....User experience is less importantNative look and feel is desiredDesire to scale up the backend and keep the mobile middleware very light.Coding skills, particularly for mobile are lackingWell understood processes requiring quick automation
  • 62. © 2011 SAP AG. All rights reserved. 62Player– When not to useDo not use the player approach when...Workflow and business processes outside of the standard offerings.Complex User Interfaces/Experience.Access to API’s outside the documented player API’s is required.Client OS is not supported by player yet.
  • 63. REST SDK Technology
  • 64. © 2011 SAP AG. All rights reserved. 64REST SDKOverviewHTTP application management solution for scenarios where there is noclient (yet) available (e.g. Windows 8)Not an Enterprise OData service or Synchronization solutionProgramming Language agnosticOpen standards – uses standards based HTTPOData like API to SMP serverPer user Registration, Authentication and ConfigurationAccess backend Odata Feeds through SMP server
  • 65. © 2011 SAP AG. All rights reserved. 65REST APIArchitectureThe REST API can be found here:http://tinyurl.com/k78revlIn particular look at thereference subsection,most important document for this SDKThe application initially connects to the server, an HTTP header with the connection id isreturned. This ID is stored and reused later on when making any connection to the server.When accessing any backend data the header is supplied with the request and then therequest is routed through the application definition on the SMP server and so is controlledboth for anonymous connections and for registered connections.Settings and customizations can also be applied at the user or group level.
  • 66. © 2011 SAP AG. All rights reserved. 66REST– When to useUse the REST approach when....Need for Application Lifecycle ManagementUser access controlReduce exposure of gateway server to internetTechnology solution prevents use of other SMP platform technologies
  • 67. © 2011 SAP AG. All rights reserved. 67REST– When not to useDo not use the REST approach when...Need a synchronization solution.No offline support.No need for ALM.Backend is already visible to the internet.
  • 68. © 2011 SAP AG. All rights reserved. 68SMP REST-based Apps DevelopmentEnsure programming API has access to HTTP headers and cookiesRegisterapplication inSMPSMP Development Task Flow1Test SMPAccess inREST testingtool2Integrate intoapplication3Deployapplication toapp stores4
  • 69. Review
  • 70. © 2011 SAP AG. All rights reserved. 70“Which SMP Technology should I use?”Review: Evaluate the Use CaseSDK ApplicationTypeUse CaseNativeObjectAPINative• iOS• BlackBerry• Windows/WM• AndroidOffline applications• Typically mission-critical and more complex.• Users can work on data while fully-offline• Server and client updates are synchronized• Very good for large data volumes and disconnected environmentsODataSDKNative• iOS• BlackBerry• AndroidOnline applications• Applications targeting SAP Netweaver Gateway• Very good for ‘lightweight’ services-based development scenariosin native apps.• No synchronization or MBOsHybridAppsWeb• HTML5/JS/CSSNative Container• iOS• Android• BlackBerry• Windows MobileOnline+, with Push• Very good for lightweight HTML cross-platform developmentscenarios with access to native.• Contains features that allow server-driven push notifications.• Allows users to act on approvals while offline, and push thoseupdates to the server when the device regains connectivity.• In 2.1, can support Camera; in 2.1.1 can support other deviceAPIs.
  • 71. © 2011 SAP AG. All rights reserved. 71“Which SMP Technology should I use? (Part 2)”Review: Evaluate the Use CaseSDK ApplicationTypeUse CaseRESTAPIAny Online applications• Applications targeting SAP Netweaver Gateway• No synchronization or MBOs• Focus on Application ManagementPlayer Native• iOS• BlackBerry• Android• Windows MobileOnline applications• Applications based ERP & CRM• Very good for metadata driven/code less solutions• Optimized workflow for various device profiles.
  • 72. SMP 2.3 Deployment Options
  • 73. © 2011 SAP AG. All rights reserved. 73Common Deployment QuestionsCan you deploy SMP servers on VM infrastructure?Windows or Linux?How Many Machines?What should the Spec Be?How do we scale?How do we deal with the DMZ?What about SSL?
  • 74. © 2011 SAP AG. All rights reserved. 74Deployment on a Developer MachineLaptop Spec:Mid to High EndRecommended:Quad Core (64 bit)8GB RamWindows 7 Pro 64bit40Gb Free
  • 75. © 2011 SAP AG. All rights reserved. 75Deployment of a Single Node Development ServerServer Spec:Mid to High EndRecommended:Quad Core (64 bit)8GB RamWindows 2008 R2 64bit40Gb FreeDevelopment Server
  • 76. © 2011 SAP AG. All rights reserved. 76Deployment of a Multi Node QA EnvironmentQuad Core (64 bit)8GB RamWindows 2008 R264bit40Gb FreeCluster Node 1Data TierCluster Node 1Reverse ProxyQuad Core (64 bit)8GB RamWindows 2008 R264bit100 Gb Free
  • 77. © 2011 SAP AG. All rights reserved. 77MS Cluster in Active ActiveDeployment of a Multi Tier Production EnvironmentQuad Core (64 bit)8GB RamWindows 2008 R264bit40Gb FreeClusterNode 1RP1NON VM MSCLUSTER AAQuad Core (64 bit)8GB RamWindows 2008 R264bitClusterNode 2ClusterNode 3RP2Load Balancer
  • 78. © 2011 SAP AG. All rights reserved. 78Sizing guidelinesBest resource is our Sizing Guide on SDNhttp://tinyurl.com/lopygznCovers sizing recommendations for:MBO’sOData ProxyAgentryEIS
  • 79. Thank You!Any questions drop me an emailpaul.todd@sap.com
  • 80. © 2011 SAP AG. All rights reserved. 80No part of this publication may be reproduced or transmitted in any form or for any purposewithout the express permission of SAP AG. The information contained herein may bechanged without prior notice.Some software products marketed by SAP AG and its distributors contain proprietarysoftware components of other software vendors.Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of MicrosoftCorporation.IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x,System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer,z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server,PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER,OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP,RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX,Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registeredtrademarks of IBM Corporation.Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks orregistered trademarks of Adobe Systems Incorporated in the United States and/or othercountries.Oracle is a registered trademark of Oracle Corporation.UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin aretrademarks or registered trademarks of Citrix Systems, Inc.HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, WorldWide Web Consortium, Massachusetts Institute of Technology.Java is a registered trademark of Sun Microsystems, Inc.JavaScript is a registered trademark of Sun Microsystems, Inc., used under license fortechnology invented and implemented by Netscape.SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer,StreamWork, and other SAP products and services mentioned herein as well as theirrespective logos are trademarks or registered trademarks of SAP AG in Germany and othercountries.© 2011 SAP AG. All rights reservedBusiness Objects and the Business Objects logo, BusinessObjects, Crystal Reports, CrystalDecisions, Web Intelligence, Xcelsius, and other Business Objects products and servicesmentioned herein as well as their respective logos are trademarks or registered trademarksof Business Objects Software Ltd. Business Objects is an SAP company.Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybaseproducts and services mentioned herein as well as their respective logos are trademarks orregistered trademarks of Sybase, Inc. Sybase is an SAP company.All other product and service names mentioned are the trademarks of their respectivecompanies. Data contained in this document serves informational purposes only. Nationalproduct specifications may vary.The information in this document is proprietary to SAP. No part of this document may bereproduced, copied, or transmitted in any form or for any purpose without the express priorwritten permission of SAP AG.This document is a preliminary version and not subject to your license agreement or anyother agreement with SAP. This document contains only intended strategies, developments,and functionalities of the SAP® product and is not intended to be binding upon SAP to anyparticular course of business, product strategy, and/or development. Please note that thisdocument is subject to change and may be changed by SAP at any time without notice.SAP assumes no responsibility for errors or omissions in this document. SAP does notwarrant the accuracy or completeness of the information, text, graphics, links, or other itemscontained within this material. This document is provided without a warranty of any kind,either express or implied, including but not limited to the implied warranties ofmerchantability, fitness for a particular purpose, or non-infringement.SAP shall have no liability for damages of any kind including without limitation direct,special, indirect, or consequential damages that may result from the use of these materials.This limitation shall not apply in cases of intent or gross negligence.The statutory liability for personal injury and defective products is not affected. SAP has nocontrol over the information that you may access through the use of hot links contained inthese materials and does not endorse your use of third-party Web pages nor provide anywarranty whatsoever relating to third-party Web pages.

×