Upload
todd-kaplinger
View
551
Download
1
Tags:
Embed Size (px)
Citation preview
Accelerating Mobile Application Development
with Mobile Cloud Services
Todd KaplingerSenior Technical Staff Member
MobileFirst for iOS Cloud Architect@todkap
Erin BartholomewMobileFirst for iOS Developer
@eebart
BlueList Application•Bluemix Hosted • Leverages Mobile Cloud Boilerplate
• Mobile Data • Push Notifications • Social Login (Google+) • Linked Identity to Data Stored in Cloud
Google+ Identity
3
Bluemix
BlueList Application• Focus on Swift version designed for iOS8 • CocoaPods Dependency Management • Article available on devWorks
• Port an iOS app from Objective-C to Swift It's easy with the IBM Mobile Data service in the Bluemix cloud platform
• Available on command line via GIT
4
DevOps
CocoaPodsGIT Hosted on DevOps
http://www.ibm.com/developerworks/library/mo-bluemix-swift-app/index.html
BlueList in Swift• Variant of BlueList Mobile Data written in Swift
• Simple TODO list for tracking outstanding items (IBM_Item.swift Class)(2 ViewControllers / One AppDelegate / One Storyboard)
• Leverages Bolts Framework to simplify data access patterns
5
https://github.com/BoltsFramework/Bolts-iOS Data CRUDBlueList Storyboard
Amazing Apparel Application• Business to Consumer (B2C) - iPhone • Business to Enterprise (B2E) - iPad • Advanced Applications
• ~ 2 unique Storyboards • ~ 22 ObjectiveC View Controllers • ~ 10 Data Objects written in ObjectiveC
• Security Integration with Mobile Cloud Services • Enterprise Security (IBM Identity) • Social Login (Google+)
• Location based services w/ Store Location Maps•Push Notifications Support • Integration with 3rd Party Weather Service• MQA sentiment analysis and crash reporting • Operational Analytics calculating usage patterns
IBM IdentityGoogle+ Identity
7
Enterprise Security• Mobile Cloud Services (Mobile Boilerplate)
• Single Sign On Add On • Social Identities • Facebook• Twitter • LinkedIn • Google • IBM (IBM Identity - devWorks)
• OAUTH2 Auth Protocol • Security Model
• Client Identifier • Client Secret
8
IBM Identity • OAUTH2 Server Side Flow • Node based solution deployed
as part of the Mobile Cloud Boilerplate
• Leverages NPM Modules • Express (REST Interface) • Passport (OAUTH Flow) • Passport-Bluemix (UAA
Integration) • Authentication Scope
• Profile • Access to user profile info
(email/preferred name/photo)
• Independent of Mobile Application Security(could be integrated)
9
Passport OAUTH
Social Integration • Mobile Application Security
(Google+ Authentication) • OAUTH2 Client Side Flow • Native iOS Libraries w/ ObjectiveC
• Authentication Scope • Profile
• Access to user profile info (email/preferred name/photo)
• Integrated with Mobile Application Security
10
Mobile Data• Client-side APIs provide intuitive environment for storing data on the cloud • Full CRUD support without writing a line of SQL • Specializations allow developers to create client-side models to encapsulate data • Object Models - Items, Shopping Cart, Stores, and Purchase History • Data accessible across iOS, Android, and JavaScript platforms
11
Shopping Cart
Push Notification Integration• Employee subscribes to notifications
on new purchases when starting the app
• Customer subscribes to notifications on order updates after logging in
• Visual notifications • Alerts appear to inform employee of
a new purchase • Notifies a customer if the status of
her/his order has changed • Data channel
• Employee’s view of pending orders is automatically reloaded when a new purchase order is created
• Customers’ purchase statuses are updated when the view is reloaded
12
13
Location • Device level APIs for obtaining
user’s current location • APIs map store locations in
close proximity to the user • User can denote preferred store
location and obtain directions.
14
Weather Service • Server Side Integration Logic
written in Node.js • APIs get current weather for
the various store locations using 3rd party weather service
15
Mobile Quality Assurance• Admin dashboard on Bluemix • Pre-production or production SDKs
• Capture device metrics with every bug report
• Analyze errors by build, device, etc.
MQA Dashboard
16
Mobile Analytics• Operational Analytics
catered to the mobile app developer
• Request metrics are automatically captured for the various Mobile Cloud Services
• Capture mobile OS levels • Analyze errors by build,
device, etc.
Data Analytics
Push Analytics
Security Analytics