SlideShare a Scribd company logo
Building Enterprise-Ready
Mobile Apps in the Real World:
A Deep Dive
Jesus Rodriguez, KidoZen
About Me
•
•
•
•
•
•
•
•
•
•

Hackerpreneur
Co-Founder KidoZen, Inc
Co-Founder Tellago, Inc
Advisor to software companies(Microsoft, Oracle….)
Microsoft MVP, Oracle ACE
Board member
Speaker, Author
http://weblogs.asp.net/gsusx
http://jrodthoughts.com
http://kidozencom
About Today
• A quick view of enterprise mobile
development
• Consumer vs. enterprise mobile apps
• Enterprise mobile development patterns and
techniques
About Today
• Is about real world solutions, no theoretical
exercise
• Is about architecture best practices, not
product pitches
A Quick Story of Building Enterprise
Mobile Solutions
Mobility is Hot
And Obvious
We Can Build Apps
I want an
app!
And Be Rock Stars
After All….
We Have Great Mobile Development
Stacks
Let’s Build Mobile Solutions
Not so fast…
Just a few things to consider…
Storing Data
Mobile identity management
Cross platform push notifications
Integration with cloud services
Integration with enterprise systems
Integration with SaaS technologies
Consistent management experience
MDM, MAM integration
Manage and secure mobile business
data
How to efficiently distribute and test
my enterprise mobile app
What should I used to monitor the
performance of my enterprise mobile
apps?
Well…..That Sucks
As it turns out, building enterprise ready
mobile apps is a bit more complex than
just building mobile apps
Consumer vs. Enterprise Apps

Consumer
Apps

Enterprise
Apps
Do you need an enterprise mobile
strategy?
Ways to think about an enterprise
mobile strategy
• The excuse my idiot CIO used to delay the
mobile project
• The 300 page document we are paying <name
your favorite analyst firm here> for
• The latest buzzword our executives care about
• A series of technology and architecture
building blocks and processes used to enable
the implementation of enterprises mobile
solutions
The Building Blocks of an Agile
Enterprise Mobility Strategy
A Few Helpful Mobile Tech Trends
•
•
•
•

Mobile device management
Enterprise app stores
Enterprise mobile backend as a service
Mobile test clouds
Mobile Device Management
• Problem: How to I manage and control mobile
devices in my organization?
• Manage and secure connected devices
• Apply security and access control policies at
the device level
• Cloud or on-premise deployments
• Interesting players: Airwatch, Good, Mobile
Iron, Citrix Xen Mobile, Mocana…..
Mobile Application Management
• Problem: I would like to manage the
enterprise mobile apps distribute in my
enterprise
• Enterprise app stores
• Manage and control distribution of enterprise
mobile applications
• Natural evolution for MDM technologies
• Interesting players: Apperian, Airwatch, Citrix
Xen-Mobile
Mobile Frontend Development
• Problem: What do we use to build mobile
apps?
• Native, hybrid and mobile-web models
• Built-once, deploy anywhere models: hybridinterpreted, cross-compiled
• Interesting players: Appcelerator, PhoneGap,
Sencha, Xamarin….
Mobile Backend Infrastructure
• Problem: How do I integrate my mobile apps
with my enterprise systems?
• Mobile middleware platforms
• Horizontal mobile capabilities
• Cloud and on-premise deployments
• Interesting players: KidoZen, FeedHenry, IBM
Worklight
Mobile Testing
• Problem: How do I test and distribute my
enterprise mobile applications?
• Unit, functional and end-user testing
• Carrier, networks and device testing
• Manual and automated
• Interesting players: uTest, Perfecto Mobile
Mobile App Performance
Monitoring
• Problem: Can I know how my mobile app is
working?
• Performance, usage and app crash monitoring
• Consumer and enterprise based
• Cloud deployments
• Interesting players: Crittercism, NewRelic for
mobile apps
Building Enterprise Ready Mobile
Apps: A Problem Solution Approach
Problem: All my enterprise mobile apps
need to store data and my DBA hates
me
Solution: Leverage an per appisolated storage model
Per App Isolated Storage
My Cloud Mobile Services
Storage

Storage
Service

Storage
Storage

String theObject = "{JSON PayLoad}";
_application.getObjectSet("name").Save(theObject);
Problem: I would like users to
authenticate to the mobile app using their
corporate credentials but my mobile
developers can’t spell Active Directory
Solution: Use a mobile-first identity
federation pattern
Mobile-First AD Authentication
My Cloud Services

Auth Service

u
Tr
st

NSString * uN=@"John Doe"
NSString * psw=@"secret"
Identity * userIdentity = [application Login:@"ADFS“
user:uN andPassword:psw];

Corp Network
Active
Directory
Problem: AD authentication is great! But is
there a way that my users don’t have to
re-authenticate with each mobile app?
Solution: Implement a token
reusability pattern
Mobile-First SSO
MBaaS

Auth Service

u
Tr
st

NSString * uN=@"John Doe"
NSString * psw=@"secret"
Identity * userIdentity = [application Login:@"ADFS“
user:uN andPassword:psw];

App1
App2

Token
Cache

Corp Network
Active
Directory
Problem: Can I enable multi-factor
authentication across my different mobile
apps
Solution: Extend your mobile
authentication service with multi-factor
capabilities
Mobile-First SSO
My Cloud Services
Auth Service

Multi-Auth
Service(App1: yes,
App2: no

u
Tr
st

NSString * uN=@"John Doe"
NSString * psw=@"secret"
Identity * userIdentity = [application Login:@"ADFS“
user:uN andPassword:psw];

App1
App2

Token
Cache

Corp Network
Active
Directory
Problem: Can I enable push
notifications across different devices?
Solution: Use a push notifications
brokered service
Mobile Push Notifications Broker
My Cloud Services

Push Notification
Service

Var channel= _application.pubSub.Subscribe(“channel name”);
channel.Send({message});
Problem: How to efficiently exchange data
between my enterprise mobile apps
Solution: Implement an inter-app
publish subscribe pattern
Inter-App Messaging Passing Pattern

App1

_application.pubSub.Publish(“channel name”);
application.pubSub.Publish(“channel name”);

Shared
Shared
Memory

App2

_application.pubSub.Subscribe(“channel name”);
_application.pubSub.Subscribe(“channel name”);

Mobile
Mobile
DB
DB
Problem: How can I integrate my
enterprise mobile apps with my line of
business systems
Solution: Implement a mobile line of
business connector pattern
Mobile LOB Connector
My Cloud Services
SF.com
Connector

Enterprise System
Service

Var mySAP= App.Services(‘SP’).Login({credentials});
Var mySF= App.Services(‘SF’).Login({credentials});
mySAP.Invoke(‘GetItems’, {parameters});
mySF.Invoke(‘GetLeads’, {parameters});

Corp Network
SAP
Connector
Problem: My enterprise systems are
having performance issues handling
mobile consumers
Solution: Implement a mobile first
data cache
Mobile LOB Connector with Data Caching
My Cloud Services
SF.com
Connector

Enterprise System
Service

Mobile Data Cache

Var mySAP= App.Services(‘SP’).Login({credentials});
Var mySF= App.Services(‘SF’).Login({credentials});
mySAP.Invoke(‘GetItems’, {parameters});
mySF.Invoke(‘GetLeads’, {parameters});

Corp Network
SAP
Connector
Problem: The performance of my mobile
apps varies according to the user location
Solution: Implement a locationaware traffic optimization model
GEO-Aware Mobile Infrastructure
My Mobile Services
GEO Traffic Manager

Data Center 1

Data Center 1

Mobile Services

Mobile Services

Enterprise App Center

Enterprise App Center

Mobile Web Server

Mobile Web Server

App Storage

Replication

App Storage
Problem: I would like to exchange data
between my apps deployed across
different devices
Solution: Implement a mobile-first
publish subscribe model
Mobile-First Event-Based Messaging
My Cloud Services
Channel

Mobile Event
Service

_application.pubSub.Publish(
“channel name”, {message});

Channel

_application.pubSub.Subscribe(
“channel name”);
Problem: I would like to secure the
business data sets used by my enterprise
mobile apps
Solution: Implement a mobile-first
data access policies
Mobile Data Management
My Cloud Services
SF.com
Connector

Enterprise System
Service

Var mySAP= App.Services(‘SP’).Login({credentials});
Var mySF= App.Services(‘SF’).Login({credentials});
mySAP.Invoke(‘GetItems’, {parameters});
mySF.Invoke(‘GetLeads’, {parameters});

• Is the mobile user
accessing the data from
a valid location
• Is the IOS device jailbroken?
• Does the data need to be
encrypted?
• Does the data source
requires dual factor
verification

Corp Network
SAP
Connector
Problem: How can I protect the
business data stored in the device?
Solution: Encrypt the data using a
temporary trusted key based on the
user’s identity
Protecting In-Device Mobile Business
Data
My Cloud Services
SF.com
Connector

Enterprise System
Service

Auth Service

Var mySAP= App.Services(‘SP’).Login({credentials});
Var mySF= App.Services(‘SF’).Login({credentials});
mySAP.Invoke(‘GetItems’, {parameters});
mySF.Invoke(‘GetLeads’, {parameters});
Encrypted Data
Encrypted Data
Cache
Cache

Corp Network
SAP
Connector
Problem: How can I efficiently test my
enterprise mobile apps
Solution: Consider leveraging a mobile
test cloud to test across different
carriers, networks and devices
Mobile Test Cloud
Mobile Test Cloud
Test Cases
App1

Target Carriers
Target Networks
Target Devices

App1
Problem: How can my enterprise apps
recover from unexpected errors?
Solution: Leverage a mobile crash
logging service
Mobile Logging Service
My Cloud Mobile Services
Logs

Logging
Service

App1

Crash Log
Collector

Logs
Logs
Problem: I have a lot of mobile-web
applications but my MDM tools only work
with native apps
Solution: Consider an on-demand
hybrid solution
On-Demand Hybrid App Building

Mobile
Web App1

PhoneGap
Build

Hybrid App

MDM
Platform
Other Enterprise Mobile Best
Practices
•
•
•
•
•
•

Enterprise App Stores
Cross platform implementations
Continuous integration
Over the air deployment
Compliance
Mobile HTML5 Hosting
Summary
• The are fundamental differences between consumer and
enterprise mobile apps
• An agile enterprise mobile strategy is about establishing
the right technology building blocks to enable the
implementation of mobile apps within an organization
• Establishing the right patterns in areas such as mobile
frontend dev, backend integration, testing, monitoring,
security, etc is essential to enable agility in mobile app
development
• Backend integration is the number 1 challenge of
enterprise mobile infrastructures
Thanks
jr@kidozen.com
http://www.kidozen.com
http://jrodthoughts.com
http://twitter.com/#!/jrodthoughts
http://weblogs.asp.net/gsusx

More Related Content

PPTX
Integration in the Enterprise Mobile World
PDF
Cross Platform Mobile Push Notifications with Azure Notifications Hub
PDF
Atlanta Salesforce UG Meeting 2/23/2011 Symplified
DOCX
Microsoft Windows Azure - Outback Retail Boosts Guest Loyalty Case Study
PDF
Securing Mobile Apps: New Approaches for the BYOD World
PDF
Uwams cloud enable-windows_store_apps_java_script
PPTX
Codestrong 2012 breakout session the role of cloud services in your next ge...
PDF
The Modern Web, Part 1: Mobility
Integration in the Enterprise Mobile World
Cross Platform Mobile Push Notifications with Azure Notifications Hub
Atlanta Salesforce UG Meeting 2/23/2011 Symplified
Microsoft Windows Azure - Outback Retail Boosts Guest Loyalty Case Study
Securing Mobile Apps: New Approaches for the BYOD World
Uwams cloud enable-windows_store_apps_java_script
Codestrong 2012 breakout session the role of cloud services in your next ge...
The Modern Web, Part 1: Mobility

What's hot (18)

PDF
How to scale enterprise mobility and improve roi
PDF
Company Profile
PPTX
Jquery mobile
PDF
Good app ideas
PPT
Impact Of The Cloud For IT Managers
PPTX
Azure Mobile Services
PPTX
S Psoftware Corporate( Clients)
PPT
Mobilizing your Visualforce Application with jQuery Mobile and Knockout.js
PPTX
PowerApps, the Developer Story: Build an API to Integrate Corporate Data
PPT
Android_ver_01
PDF
Mobile Application Development
PDF
Jason cross
PPTX
ForgeRock CTO TECHNOLOGY PREVIEW
PDF
CASE-4 Automating Business Processes in Denver: A Technical Case Study
PPTX
Do we have a round wheel? Thoughts on Identity standards
PDF
Salesforce Dev Day Paris - keynote
PDF
Sybrant - Mobile app solutions capability
PDF
I os enterprise_deployment_overview
How to scale enterprise mobility and improve roi
Company Profile
Jquery mobile
Good app ideas
Impact Of The Cloud For IT Managers
Azure Mobile Services
S Psoftware Corporate( Clients)
Mobilizing your Visualforce Application with jQuery Mobile and Knockout.js
PowerApps, the Developer Story: Build an API to Integrate Corporate Data
Android_ver_01
Mobile Application Development
Jason cross
ForgeRock CTO TECHNOLOGY PREVIEW
CASE-4 Automating Business Processes in Denver: A Technical Case Study
Do we have a round wheel? Thoughts on Identity standards
Salesforce Dev Day Paris - keynote
Sybrant - Mobile app solutions capability
I os enterprise_deployment_overview
Ad

Similar to Building Enterprise Ready Mobile Apps: A Developer Deep Dive (20)

PPTX
Introducing the Mobile-First Cloud
PDF
Kidozen Mobile First Cloud-Presentation
PDF
[XamarinDay] Xamarin History - From 0 to microsoft acquisition !
PDF
CIS13: Deliver Secure Apps with Great Experiences
PDF
Powering your Apps with Cloud Services
PPTX
Overview of Enterprise Mobility
PPTX
Mobilizing Microsoft Sharepoint Server
PDF
From Liability to Asset: How to Better Secure Enterprise Mobile Deployments
PPT
Key Architectural Aspects of a Enterprise Mobility Solution
PPTX
Managing BYOD Conference: Mobile Enterprise Data
PDF
New Enterprisre Capabilities in Telerik Platform
PPTX
Mobile DAta
PDF
What is mobile application development by codemech
PPTX
Mobile architecture overview
PDF
Cloud-based Mobile Apps Development in Malaysia
PDF
HTML5 Mobile Web Framework - High Level Design
PPTX
Introducing the Mobile-First Middleware
PPTX
Mobile First Middleware
PPTX
Enterprise Mobility @ Neev
PPTX
Salesforce Mobile Developer Week
Introducing the Mobile-First Cloud
Kidozen Mobile First Cloud-Presentation
[XamarinDay] Xamarin History - From 0 to microsoft acquisition !
CIS13: Deliver Secure Apps with Great Experiences
Powering your Apps with Cloud Services
Overview of Enterprise Mobility
Mobilizing Microsoft Sharepoint Server
From Liability to Asset: How to Better Secure Enterprise Mobile Deployments
Key Architectural Aspects of a Enterprise Mobility Solution
Managing BYOD Conference: Mobile Enterprise Data
New Enterprisre Capabilities in Telerik Platform
Mobile DAta
What is mobile application development by codemech
Mobile architecture overview
Cloud-based Mobile Apps Development in Malaysia
HTML5 Mobile Web Framework - High Level Design
Introducing the Mobile-First Middleware
Mobile First Middleware
Enterprise Mobility @ Neev
Salesforce Mobile Developer Week
Ad

More from kidozen (15)

PPTX
IOT Platform as a Service
PPTX
KidoZen Mastering Unit Testing in Xamarin
PDF
APIs of Enterprise mBaaS Platforms
PPTX
5 Trends that Will Shape The Future of the Mobile Enterprise
PPTX
KidoZen Enterprise-Ready Mobile App Infrastructure
PPTX
What's Next for Enterprise Mobility
PPTX
Mobile Data Management, The Next Frontier of Enterprise Mobility
PPTX
Introducing the mHealth Platform as a Service
PPTX
From MDM(Devices) to MDM(Data)
PPT
Challenges in enterprise mobility development 2
PPTX
From Managing Devices to Apps to Data
PPTX
Mobilizing Microsoft SharePoint Server: An MBaaS PErspective
PPTX
M baa s as the new enterprise middleware
PDF
Whitepaper KidoZen vs-konyone
PDF
Whitepaper KidoZen overview
IOT Platform as a Service
KidoZen Mastering Unit Testing in Xamarin
APIs of Enterprise mBaaS Platforms
5 Trends that Will Shape The Future of the Mobile Enterprise
KidoZen Enterprise-Ready Mobile App Infrastructure
What's Next for Enterprise Mobility
Mobile Data Management, The Next Frontier of Enterprise Mobility
Introducing the mHealth Platform as a Service
From MDM(Devices) to MDM(Data)
Challenges in enterprise mobility development 2
From Managing Devices to Apps to Data
Mobilizing Microsoft SharePoint Server: An MBaaS PErspective
M baa s as the new enterprise middleware
Whitepaper KidoZen vs-konyone
Whitepaper KidoZen overview

Recently uploaded (20)

PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
Cloud computing and distributed systems.
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Electronic commerce courselecture one. Pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Encapsulation theory and applications.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
KodekX | Application Modernization Development
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
Understanding_Digital_Forensics_Presentation.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
“AI and Expert System Decision Support & Business Intelligence Systems”
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Cloud computing and distributed systems.
20250228 LYD VKU AI Blended-Learning.pptx
Spectral efficient network and resource selection model in 5G networks
Electronic commerce courselecture one. Pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Encapsulation theory and applications.pdf
NewMind AI Weekly Chronicles - August'25 Week I
sap open course for s4hana steps from ECC to s4
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Programs and apps: productivity, graphics, security and other tools
Mobile App Security Testing_ A Comprehensive Guide.pdf
KodekX | Application Modernization Development
Diabetes mellitus diagnosis method based random forest with bat algorithm

Building Enterprise Ready Mobile Apps: A Developer Deep Dive

  • 1. Building Enterprise-Ready Mobile Apps in the Real World: A Deep Dive Jesus Rodriguez, KidoZen
  • 2. About Me • • • • • • • • • • Hackerpreneur Co-Founder KidoZen, Inc Co-Founder Tellago, Inc Advisor to software companies(Microsoft, Oracle….) Microsoft MVP, Oracle ACE Board member Speaker, Author http://weblogs.asp.net/gsusx http://jrodthoughts.com http://kidozencom
  • 3. About Today • A quick view of enterprise mobile development • Consumer vs. enterprise mobile apps • Enterprise mobile development patterns and techniques
  • 4. About Today • Is about real world solutions, no theoretical exercise • Is about architecture best practices, not product pitches
  • 5. A Quick Story of Building Enterprise Mobile Solutions
  • 8. We Can Build Apps I want an app!
  • 9. And Be Rock Stars
  • 11. We Have Great Mobile Development Stacks
  • 12. Let’s Build Mobile Solutions
  • 14. Just a few things to consider…
  • 17. Cross platform push notifications
  • 20. Integration with SaaS technologies
  • 23. Manage and secure mobile business data
  • 24. How to efficiently distribute and test my enterprise mobile app
  • 25. What should I used to monitor the performance of my enterprise mobile apps?
  • 27. As it turns out, building enterprise ready mobile apps is a bit more complex than just building mobile apps
  • 28. Consumer vs. Enterprise Apps Consumer Apps Enterprise Apps
  • 29. Do you need an enterprise mobile strategy?
  • 30. Ways to think about an enterprise mobile strategy • The excuse my idiot CIO used to delay the mobile project • The 300 page document we are paying <name your favorite analyst firm here> for • The latest buzzword our executives care about • A series of technology and architecture building blocks and processes used to enable the implementation of enterprises mobile solutions
  • 31. The Building Blocks of an Agile Enterprise Mobility Strategy
  • 32. A Few Helpful Mobile Tech Trends • • • • Mobile device management Enterprise app stores Enterprise mobile backend as a service Mobile test clouds
  • 33. Mobile Device Management • Problem: How to I manage and control mobile devices in my organization? • Manage and secure connected devices • Apply security and access control policies at the device level • Cloud or on-premise deployments • Interesting players: Airwatch, Good, Mobile Iron, Citrix Xen Mobile, Mocana…..
  • 34. Mobile Application Management • Problem: I would like to manage the enterprise mobile apps distribute in my enterprise • Enterprise app stores • Manage and control distribution of enterprise mobile applications • Natural evolution for MDM technologies • Interesting players: Apperian, Airwatch, Citrix Xen-Mobile
  • 35. Mobile Frontend Development • Problem: What do we use to build mobile apps? • Native, hybrid and mobile-web models • Built-once, deploy anywhere models: hybridinterpreted, cross-compiled • Interesting players: Appcelerator, PhoneGap, Sencha, Xamarin….
  • 36. Mobile Backend Infrastructure • Problem: How do I integrate my mobile apps with my enterprise systems? • Mobile middleware platforms • Horizontal mobile capabilities • Cloud and on-premise deployments • Interesting players: KidoZen, FeedHenry, IBM Worklight
  • 37. Mobile Testing • Problem: How do I test and distribute my enterprise mobile applications? • Unit, functional and end-user testing • Carrier, networks and device testing • Manual and automated • Interesting players: uTest, Perfecto Mobile
  • 38. Mobile App Performance Monitoring • Problem: Can I know how my mobile app is working? • Performance, usage and app crash monitoring • Consumer and enterprise based • Cloud deployments • Interesting players: Crittercism, NewRelic for mobile apps
  • 39. Building Enterprise Ready Mobile Apps: A Problem Solution Approach
  • 40. Problem: All my enterprise mobile apps need to store data and my DBA hates me
  • 41. Solution: Leverage an per appisolated storage model
  • 42. Per App Isolated Storage My Cloud Mobile Services Storage Storage Service Storage Storage String theObject = "{JSON PayLoad}"; _application.getObjectSet("name").Save(theObject);
  • 43. Problem: I would like users to authenticate to the mobile app using their corporate credentials but my mobile developers can’t spell Active Directory
  • 44. Solution: Use a mobile-first identity federation pattern
  • 45. Mobile-First AD Authentication My Cloud Services Auth Service u Tr st NSString * uN=@"John Doe" NSString * psw=@"secret" Identity * userIdentity = [application Login:@"ADFS“ user:uN andPassword:psw]; Corp Network Active Directory
  • 46. Problem: AD authentication is great! But is there a way that my users don’t have to re-authenticate with each mobile app?
  • 47. Solution: Implement a token reusability pattern
  • 48. Mobile-First SSO MBaaS Auth Service u Tr st NSString * uN=@"John Doe" NSString * psw=@"secret" Identity * userIdentity = [application Login:@"ADFS“ user:uN andPassword:psw]; App1 App2 Token Cache Corp Network Active Directory
  • 49. Problem: Can I enable multi-factor authentication across my different mobile apps
  • 50. Solution: Extend your mobile authentication service with multi-factor capabilities
  • 51. Mobile-First SSO My Cloud Services Auth Service Multi-Auth Service(App1: yes, App2: no u Tr st NSString * uN=@"John Doe" NSString * psw=@"secret" Identity * userIdentity = [application Login:@"ADFS“ user:uN andPassword:psw]; App1 App2 Token Cache Corp Network Active Directory
  • 52. Problem: Can I enable push notifications across different devices?
  • 53. Solution: Use a push notifications brokered service
  • 54. Mobile Push Notifications Broker My Cloud Services Push Notification Service Var channel= _application.pubSub.Subscribe(“channel name”); channel.Send({message});
  • 55. Problem: How to efficiently exchange data between my enterprise mobile apps
  • 56. Solution: Implement an inter-app publish subscribe pattern
  • 57. Inter-App Messaging Passing Pattern App1 _application.pubSub.Publish(“channel name”); application.pubSub.Publish(“channel name”); Shared Shared Memory App2 _application.pubSub.Subscribe(“channel name”); _application.pubSub.Subscribe(“channel name”); Mobile Mobile DB DB
  • 58. Problem: How can I integrate my enterprise mobile apps with my line of business systems
  • 59. Solution: Implement a mobile line of business connector pattern
  • 60. Mobile LOB Connector My Cloud Services SF.com Connector Enterprise System Service Var mySAP= App.Services(‘SP’).Login({credentials}); Var mySF= App.Services(‘SF’).Login({credentials}); mySAP.Invoke(‘GetItems’, {parameters}); mySF.Invoke(‘GetLeads’, {parameters}); Corp Network SAP Connector
  • 61. Problem: My enterprise systems are having performance issues handling mobile consumers
  • 62. Solution: Implement a mobile first data cache
  • 63. Mobile LOB Connector with Data Caching My Cloud Services SF.com Connector Enterprise System Service Mobile Data Cache Var mySAP= App.Services(‘SP’).Login({credentials}); Var mySF= App.Services(‘SF’).Login({credentials}); mySAP.Invoke(‘GetItems’, {parameters}); mySF.Invoke(‘GetLeads’, {parameters}); Corp Network SAP Connector
  • 64. Problem: The performance of my mobile apps varies according to the user location
  • 65. Solution: Implement a locationaware traffic optimization model
  • 66. GEO-Aware Mobile Infrastructure My Mobile Services GEO Traffic Manager Data Center 1 Data Center 1 Mobile Services Mobile Services Enterprise App Center Enterprise App Center Mobile Web Server Mobile Web Server App Storage Replication App Storage
  • 67. Problem: I would like to exchange data between my apps deployed across different devices
  • 68. Solution: Implement a mobile-first publish subscribe model
  • 69. Mobile-First Event-Based Messaging My Cloud Services Channel Mobile Event Service _application.pubSub.Publish( “channel name”, {message}); Channel _application.pubSub.Subscribe( “channel name”);
  • 70. Problem: I would like to secure the business data sets used by my enterprise mobile apps
  • 71. Solution: Implement a mobile-first data access policies
  • 72. Mobile Data Management My Cloud Services SF.com Connector Enterprise System Service Var mySAP= App.Services(‘SP’).Login({credentials}); Var mySF= App.Services(‘SF’).Login({credentials}); mySAP.Invoke(‘GetItems’, {parameters}); mySF.Invoke(‘GetLeads’, {parameters}); • Is the mobile user accessing the data from a valid location • Is the IOS device jailbroken? • Does the data need to be encrypted? • Does the data source requires dual factor verification Corp Network SAP Connector
  • 73. Problem: How can I protect the business data stored in the device?
  • 74. Solution: Encrypt the data using a temporary trusted key based on the user’s identity
  • 75. Protecting In-Device Mobile Business Data My Cloud Services SF.com Connector Enterprise System Service Auth Service Var mySAP= App.Services(‘SP’).Login({credentials}); Var mySF= App.Services(‘SF’).Login({credentials}); mySAP.Invoke(‘GetItems’, {parameters}); mySF.Invoke(‘GetLeads’, {parameters}); Encrypted Data Encrypted Data Cache Cache Corp Network SAP Connector
  • 76. Problem: How can I efficiently test my enterprise mobile apps
  • 77. Solution: Consider leveraging a mobile test cloud to test across different carriers, networks and devices
  • 78. Mobile Test Cloud Mobile Test Cloud Test Cases App1 Target Carriers Target Networks Target Devices App1
  • 79. Problem: How can my enterprise apps recover from unexpected errors?
  • 80. Solution: Leverage a mobile crash logging service
  • 81. Mobile Logging Service My Cloud Mobile Services Logs Logging Service App1 Crash Log Collector Logs Logs
  • 82. Problem: I have a lot of mobile-web applications but my MDM tools only work with native apps
  • 83. Solution: Consider an on-demand hybrid solution
  • 84. On-Demand Hybrid App Building Mobile Web App1 PhoneGap Build Hybrid App MDM Platform
  • 85. Other Enterprise Mobile Best Practices • • • • • • Enterprise App Stores Cross platform implementations Continuous integration Over the air deployment Compliance Mobile HTML5 Hosting
  • 86. Summary • The are fundamental differences between consumer and enterprise mobile apps • An agile enterprise mobile strategy is about establishing the right technology building blocks to enable the implementation of mobile apps within an organization • Establishing the right patterns in areas such as mobile frontend dev, backend integration, testing, monitoring, security, etc is essential to enable agility in mobile app development • Backend integration is the number 1 challenge of enterprise mobile infrastructures

Editor's Notes