SlideShare a Scribd company logo
24th July 2013
Sachin Bhosale
Architecting Mobile Solutions for
the Enterprise
Contents
Introduction
Pillars of Mobile Strategy
Mobile Sites vs. Native Applications
Mobile Sites
• Mobile Architecture
• Building Mobile Websites
• HTML5 and JQuery Mobile
Mobile Applications
• Patterns of Mobile Application Development
• Cross Platform development
Introduction - The World Is Going Mobile
 Over 50% of the world’s households carry a
mobile device – 3B+
 Global mobile traffic now represents roughly
13% of Internet traffic.
 In India, mobile internet traffic surpassed
desktop internet usage in May 2012 – other
countries to follow
 Out of 4B+ mobile users, 1B+ are
smartphone users.
The future is already here – it’s just not evenly distributed
Pillars of a Mobile Strategy
• Define a Mobile
Strategy
• Development and
Costs
Going Mobile
• Focus on your
audience
• Delivery Models
Outlining a
B2C Strategy • Serve your (limited)
audience
• Mobile Enterprise
Application Platforms
Outlining B2B
Strategy
Mobile Sites vs. Native Applications
Server side solution
One Site Fits (almost) All
Hassle Free Deployments
No Access to Hardware
capabilities
Varied Browser Capabilities
Network Latency
Fast and fully integrated
App Store Integration
User Experience
Isolated Mobile Continents
(iOS, Android etc.)
Minimized SEO
Mobile Sites
Native Applications
Mobile Sites > Architecture
o Stereotypes to refresh
o Analysis first
o Defining a Mobile Application Layer
o Server-Side Device Detection
o Multi serving
o One Web
• People Don’t Like
Mobile Sites: Why
Bother?
• You Don’t Need
Mobile Sites at All
• A Tiny HTML Page Will
Do the Trick
• One Site Fits All
Myths
Mobile Sites > Building Mobile Sites
o Application Structure
o Single Page Interface (SPI) Model
o Full Page Refresh
o Partial Page Refresh
o The Device Detector Site
o Routing to mobile views
o Detecting device capabilities
o Putting the site up
Mobile Sites > HTML5 and jQuery Mobile
o jQuery mobile is a cross-platform UI
framework for creating webapps for
touch-enabled smartphones and
tablets
o non intrusive semantic HTML5 code
o open sourced & lightweight
o multi platform with progressive
enhancement
o build one site that works on any
browser
o Supports almost all platforms
Mobile Applications
• A applications developed to run natively on the targeted device, usually
written in a device specific language like Objective-C or Java.
• Delivered through App stores
 To achieve a significant market adoption, your solution needs to target at
least 4-5 platforms:
iPhone , Android, Blackberry, Windows Mobile, Symbian too
 Are you going to engineer for all?
Mobile Applications > Interaction Patterns
o Back and Save Pattern
Save the content of input screens when the user leaves (or is forced to
leave) the screen
o Guess-Don’t-Ask Pattern
Use any available resources to make intelligent guesses and save users the
largest possible bit of interaction
o A-la-Carte-Menu Pattern
o Sink-or-Async Pattern
Implement asynchronously any operations expected to perform for longer
than a bunch of ms
o Logon-and-Forget Pattern
Mobile Applications > Presentation Patterns
o Babel-Tower Pattern
Avoid hard-coded and fixed layout text and design your application to
support the dynamic injection of properly translated text.
o Do-as-Romans-Do Pattern
It is compelling for users, and possibly also advantageous for developers,
to abide by the look and feel and capabilities of the host operating
system.
o List-and-Scroll Pattern
Don’t be afraid of using (vertical) lists in your mobile application, even
long lists that contain more than 100 items to scroll.
Mobile Applications > Behavioral Patterns
o Predictive Fetch Pattern
If you depend on network connectivity, download data that is likely to be
used later and make sure you have enough data stored at any time to
survive a lack of connectivity.
o Memento-Mori Pattern
Applications always should save their relevant state when the operating
system forces them into the background.
o As-soon-as-Possible Pattern
Remote operations that are critical for the application should be
implemented in a protected manner and reiterated a few times before
failing. In case of failure, however, the operation should be recorded and
played back as connectivity returns.
Mobile Applications > Cross platform development
The Virtual Machine Approach
A virtual machine is an environment that creates a sort of abstraction layer
on top of some underlying hardware
The Shell Approach
The idea behind the Shell approach is to integrate a web-view native
component with the user interface of the application
 Titanium Mobile
 Flash Builder
Mobile Applications > Developing with PhoneGap
PhoneGap is built around a very simple
(but effective) idea: you build a local
HTML5 application, and the framework
packages it as a native application for a
variety of mobile platforms
Thank you!

More Related Content

What's hot

AJAX for Mobile Devices - 04/2009
AJAX for Mobile Devices - 04/2009AJAX for Mobile Devices - 04/2009
AJAX for Mobile Devices - 04/2009
Roland Tritsch
 
Demystifying the Mobile Container - PART 2
Demystifying the Mobile Container - PART 2Demystifying the Mobile Container - PART 2
Demystifying the Mobile Container - PART 2
Relayware
 
New to Mobile Application Development ? Learn about MEAP
New to Mobile Application Development ? Learn about MEAPNew to Mobile Application Development ? Learn about MEAP
New to Mobile Application Development ? Learn about MEAP
Arvind Rangarajan
 
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
Michael Jacobsen
 
2013 Good Design is Good Business mobile and RSA
2013 Good Design is Good Business mobile and RSA2013 Good Design is Good Business mobile and RSA
2013 Good Design is Good Business mobile and RSA
Roger Snook
 
BP3: Mobile for BPM, BPM for Mobile Rev 1
BP3: Mobile for BPM, BPM for Mobile Rev 1BP3: Mobile for BPM, BPM for Mobile Rev 1
BP3: Mobile for BPM, BPM for Mobile Rev 1
BP3 Global, Inc.
 
Why should enterprises need a Mobile Enterprise Application Platform
Why should enterprises need a Mobile Enterprise Application PlatformWhy should enterprises need a Mobile Enterprise Application Platform
Why should enterprises need a Mobile Enterprise Application Platform
Convertigo | MADP & MBaaS
 
Worklight Overview
Worklight OverviewWorklight Overview
Worklight Overview
Andrew Ferrier
 
Mobile Application Architecture Strategy
Mobile Application Architecture StrategyMobile Application Architecture Strategy
Mobile Application Architecture Strategy
Gary Wong
 
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
IBM Switzerland
 
IBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem PartnersIBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem Partners
Jeremy Siewert
 
Mobile World Congress 2013 IBM-ATT Session
Mobile World Congress 2013 IBM-ATT SessionMobile World Congress 2013 IBM-ATT Session
Mobile World Congress 2013 IBM-ATT Session
Leigh Williamson
 
IBM InterConnect 2013 Mobile Keynote: Marie Wieck
IBM InterConnect 2013 Mobile Keynote: Marie WieckIBM InterConnect 2013 Mobile Keynote: Marie Wieck
IBM InterConnect 2013 Mobile Keynote: Marie Wieck
IBM Events
 
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Robert Sutor
 
Enterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to BackendEnterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to Backend
Sanjeev Sharma
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development Career
KMS Technology
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overview
David Scruggs
 
Hybrid Applications with WebSphere commerce and Worklight
Hybrid Applications with WebSphere commerce and WorklightHybrid Applications with WebSphere commerce and Worklight
Hybrid Applications with WebSphere commerce and Worklight
Mohammad Omer Raza
 
Mobile Monday Boston 6/15/09 - Developer's Meetup
Mobile Monday Boston 6/15/09 - Developer's MeetupMobile Monday Boston 6/15/09 - Developer's Meetup
Mobile Monday Boston 6/15/09 - Developer's Meetup
kateimbach
 
Digital hour presentation BB10
Digital hour presentation BB10Digital hour presentation BB10
Digital hour presentation BB10
Industree spa
 

What's hot (20)

AJAX for Mobile Devices - 04/2009
AJAX for Mobile Devices - 04/2009AJAX for Mobile Devices - 04/2009
AJAX for Mobile Devices - 04/2009
 
Demystifying the Mobile Container - PART 2
Demystifying the Mobile Container - PART 2Demystifying the Mobile Container - PART 2
Demystifying the Mobile Container - PART 2
 
New to Mobile Application Development ? Learn about MEAP
New to Mobile Application Development ? Learn about MEAPNew to Mobile Application Development ? Learn about MEAP
New to Mobile Application Development ? Learn about MEAP
 
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
How Meritage Homes Drove More Mobile Business Using IBM MobileFirst Platform ...
 
2013 Good Design is Good Business mobile and RSA
2013 Good Design is Good Business mobile and RSA2013 Good Design is Good Business mobile and RSA
2013 Good Design is Good Business mobile and RSA
 
BP3: Mobile for BPM, BPM for Mobile Rev 1
BP3: Mobile for BPM, BPM for Mobile Rev 1BP3: Mobile for BPM, BPM for Mobile Rev 1
BP3: Mobile for BPM, BPM for Mobile Rev 1
 
Why should enterprises need a Mobile Enterprise Application Platform
Why should enterprises need a Mobile Enterprise Application PlatformWhy should enterprises need a Mobile Enterprise Application Platform
Why should enterprises need a Mobile Enterprise Application Platform
 
Worklight Overview
Worklight OverviewWorklight Overview
Worklight Overview
 
Mobile Application Architecture Strategy
Mobile Application Architecture StrategyMobile Application Architecture Strategy
Mobile Application Architecture Strategy
 
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
IBM MobileFirst and Case Studies_Frank Müller_IBM Symposium 2013
 
IBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem PartnersIBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem Partners
 
Mobile World Congress 2013 IBM-ATT Session
Mobile World Congress 2013 IBM-ATT SessionMobile World Congress 2013 IBM-ATT Session
Mobile World Congress 2013 IBM-ATT Session
 
IBM InterConnect 2013 Mobile Keynote: Marie Wieck
IBM InterConnect 2013 Mobile Keynote: Marie WieckIBM InterConnect 2013 Mobile Keynote: Marie Wieck
IBM InterConnect 2013 Mobile Keynote: Marie Wieck
 
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
Lotusphere 2012 - Harnessing the Power of Enterprise Mobility
 
Enterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to BackendEnterprise Mobile App UX: Designing from UI to Backend
Enterprise Mobile App UX: Designing from UI to Backend
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development Career
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overview
 
Hybrid Applications with WebSphere commerce and Worklight
Hybrid Applications with WebSphere commerce and WorklightHybrid Applications with WebSphere commerce and Worklight
Hybrid Applications with WebSphere commerce and Worklight
 
Mobile Monday Boston 6/15/09 - Developer's Meetup
Mobile Monday Boston 6/15/09 - Developer's MeetupMobile Monday Boston 6/15/09 - Developer's Meetup
Mobile Monday Boston 6/15/09 - Developer's Meetup
 
Digital hour presentation BB10
Digital hour presentation BB10Digital hour presentation BB10
Digital hour presentation BB10
 

Similar to Architecting mobile solutions

Hybrid vs Native vs Web Apps
Hybrid vs Native vs Web AppsHybrid vs Native vs Web Apps
Hybrid vs Native vs Web Apps
Poluru S
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learning
geoff stead
 
Interactive Mobile Applications in the Enterprise: Are You Ready?
Interactive Mobile Applications in the Enterprise: Are You Ready?Interactive Mobile Applications in the Enterprise: Are You Ready?
Interactive Mobile Applications in the Enterprise: Are You Ready?
CITYTECH, Inc.
 
Mobile web development
Mobile web development Mobile web development
Mobile web development
Moumie Soulemane
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014
AuraPlayer
 
Presentation1
Presentation1Presentation1
Presentation1
csimmons44
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.
Petru Jucovschi
 
1.1. Introducing OutSystems Apps.en-US.pdf
1.1. Introducing OutSystems Apps.en-US.pdf1.1. Introducing OutSystems Apps.en-US.pdf
1.1. Introducing OutSystems Apps.en-US.pdf
Chandrak43
 
Mobile Design for Instructional Designers
Mobile Design for Instructional DesignersMobile Design for Instructional Designers
Mobile Design for Instructional Designers
Brandon Carson
 
Overview of Enterprise Mobility
Overview of Enterprise MobilityOverview of Enterprise Mobility
Overview of Enterprise Mobility
Yuvaraj Ilangovan
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5
Muhamad Arief
 
Cti av3
Cti av3Cti av3
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
Ivano Malavolta
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10
Almog Koren
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile App
St. Petersburg College
 
Developing for Mobility
Developing for MobilityDeveloping for Mobility
Developing for Mobility
Scotty Logan
 
Developing a Progressive Mobile Strategy (J. Boye edition)
Developing a Progressive Mobile Strategy (J. Boye edition)Developing a Progressive Mobile Strategy (J. Boye edition)
Developing a Progressive Mobile Strategy (J. Boye edition)
Dave Olsen
 
Engage 2013 - Mobile solution strategies
Engage 2013 - Mobile solution strategiesEngage 2013 - Mobile solution strategies
Engage 2013 - Mobile solution strategies
Avtex
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
Palani Kumar
 

Similar to Architecting mobile solutions (20)

Hybrid vs Native vs Web Apps
Hybrid vs Native vs Web AppsHybrid vs Native vs Web Apps
Hybrid vs Native vs Web Apps
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learning
 
Interactive Mobile Applications in the Enterprise: Are You Ready?
Interactive Mobile Applications in the Enterprise: Are You Ready?Interactive Mobile Applications in the Enterprise: Are You Ready?
Interactive Mobile Applications in the Enterprise: Are You Ready?
 
Mobile web development
Mobile web development Mobile web development
Mobile web development
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014
 
Presentation1
Presentation1Presentation1
Presentation1
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.
 
1.1. Introducing OutSystems Apps.en-US.pdf
1.1. Introducing OutSystems Apps.en-US.pdf1.1. Introducing OutSystems Apps.en-US.pdf
1.1. Introducing OutSystems Apps.en-US.pdf
 
Mobile Design for Instructional Designers
Mobile Design for Instructional DesignersMobile Design for Instructional Designers
Mobile Design for Instructional Designers
 
Overview of Enterprise Mobility
Overview of Enterprise MobilityOverview of Enterprise Mobility
Overview of Enterprise Mobility
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5
 
Cti av3
Cti av3Cti av3
Cti av3
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile App
 
Developing for Mobility
Developing for MobilityDeveloping for Mobility
Developing for Mobility
 
Developing a Progressive Mobile Strategy (J. Boye edition)
Developing a Progressive Mobile Strategy (J. Boye edition)Developing a Progressive Mobile Strategy (J. Boye edition)
Developing a Progressive Mobile Strategy (J. Boye edition)
 
Engage 2013 - Mobile solution strategies
Engage 2013 - Mobile solution strategiesEngage 2013 - Mobile solution strategies
Engage 2013 - Mobile solution strategies
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 

Recently uploaded

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
safelyiotech
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
Alberto Brandolini
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
kalichargn70th171
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
ervikas4
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Peter Caitens
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
Quarter 3 SLRP grade 9.. gshajsbhhaheabh
Quarter 3 SLRP grade 9.. gshajsbhhaheabhQuarter 3 SLRP grade 9.. gshajsbhhaheabh
Quarter 3 SLRP grade 9.. gshajsbhhaheabh
aisafed42
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLESINTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
anfaltahir1010
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
Severalnines
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 

Recently uploaded (20)

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
Quarter 3 SLRP grade 9.. gshajsbhhaheabh
Quarter 3 SLRP grade 9.. gshajsbhhaheabhQuarter 3 SLRP grade 9.. gshajsbhhaheabh
Quarter 3 SLRP grade 9.. gshajsbhhaheabh
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLESINTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
 
Kubernetes at Scale: Going Multi-Cluster with Istio
Kubernetes at Scale:  Going Multi-Cluster  with IstioKubernetes at Scale:  Going Multi-Cluster  with Istio
Kubernetes at Scale: Going Multi-Cluster with Istio
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 

Architecting mobile solutions

  • 1. 24th July 2013 Sachin Bhosale Architecting Mobile Solutions for the Enterprise
  • 2. Contents Introduction Pillars of Mobile Strategy Mobile Sites vs. Native Applications Mobile Sites • Mobile Architecture • Building Mobile Websites • HTML5 and JQuery Mobile Mobile Applications • Patterns of Mobile Application Development • Cross Platform development
  • 3. Introduction - The World Is Going Mobile  Over 50% of the world’s households carry a mobile device – 3B+  Global mobile traffic now represents roughly 13% of Internet traffic.  In India, mobile internet traffic surpassed desktop internet usage in May 2012 – other countries to follow  Out of 4B+ mobile users, 1B+ are smartphone users. The future is already here – it’s just not evenly distributed
  • 4. Pillars of a Mobile Strategy • Define a Mobile Strategy • Development and Costs Going Mobile • Focus on your audience • Delivery Models Outlining a B2C Strategy • Serve your (limited) audience • Mobile Enterprise Application Platforms Outlining B2B Strategy
  • 5. Mobile Sites vs. Native Applications Server side solution One Site Fits (almost) All Hassle Free Deployments No Access to Hardware capabilities Varied Browser Capabilities Network Latency Fast and fully integrated App Store Integration User Experience Isolated Mobile Continents (iOS, Android etc.) Minimized SEO Mobile Sites Native Applications
  • 6. Mobile Sites > Architecture o Stereotypes to refresh o Analysis first o Defining a Mobile Application Layer o Server-Side Device Detection o Multi serving o One Web • People Don’t Like Mobile Sites: Why Bother? • You Don’t Need Mobile Sites at All • A Tiny HTML Page Will Do the Trick • One Site Fits All Myths
  • 7. Mobile Sites > Building Mobile Sites o Application Structure o Single Page Interface (SPI) Model o Full Page Refresh o Partial Page Refresh o The Device Detector Site o Routing to mobile views o Detecting device capabilities o Putting the site up
  • 8. Mobile Sites > HTML5 and jQuery Mobile o jQuery mobile is a cross-platform UI framework for creating webapps for touch-enabled smartphones and tablets o non intrusive semantic HTML5 code o open sourced & lightweight o multi platform with progressive enhancement o build one site that works on any browser o Supports almost all platforms
  • 9. Mobile Applications • A applications developed to run natively on the targeted device, usually written in a device specific language like Objective-C or Java. • Delivered through App stores  To achieve a significant market adoption, your solution needs to target at least 4-5 platforms: iPhone , Android, Blackberry, Windows Mobile, Symbian too  Are you going to engineer for all?
  • 10. Mobile Applications > Interaction Patterns o Back and Save Pattern Save the content of input screens when the user leaves (or is forced to leave) the screen o Guess-Don’t-Ask Pattern Use any available resources to make intelligent guesses and save users the largest possible bit of interaction o A-la-Carte-Menu Pattern o Sink-or-Async Pattern Implement asynchronously any operations expected to perform for longer than a bunch of ms o Logon-and-Forget Pattern
  • 11. Mobile Applications > Presentation Patterns o Babel-Tower Pattern Avoid hard-coded and fixed layout text and design your application to support the dynamic injection of properly translated text. o Do-as-Romans-Do Pattern It is compelling for users, and possibly also advantageous for developers, to abide by the look and feel and capabilities of the host operating system. o List-and-Scroll Pattern Don’t be afraid of using (vertical) lists in your mobile application, even long lists that contain more than 100 items to scroll.
  • 12. Mobile Applications > Behavioral Patterns o Predictive Fetch Pattern If you depend on network connectivity, download data that is likely to be used later and make sure you have enough data stored at any time to survive a lack of connectivity. o Memento-Mori Pattern Applications always should save their relevant state when the operating system forces them into the background. o As-soon-as-Possible Pattern Remote operations that are critical for the application should be implemented in a protected manner and reiterated a few times before failing. In case of failure, however, the operation should be recorded and played back as connectivity returns.
  • 13. Mobile Applications > Cross platform development The Virtual Machine Approach A virtual machine is an environment that creates a sort of abstraction layer on top of some underlying hardware The Shell Approach The idea behind the Shell approach is to integrate a web-view native component with the user interface of the application  Titanium Mobile  Flash Builder
  • 14. Mobile Applications > Developing with PhoneGap PhoneGap is built around a very simple (but effective) idea: you build a local HTML5 application, and the framework packages it as a native application for a variety of mobile platforms

Editor's Notes

  1. The World Is Going Mobile  Global mobile traffic now represents roughly 13% of Internet traffic.
  2. going mobile is a far more serious task than simply writing an iPhone application. Mobile axioms are statements about mobile applications that are self-evident and assumed to be true ■■ Provide your services through multiple channels. ■■ Look for new opportunities and new ways to provide your services. ■■ Aim at making your customers’ lives easier. Define Mobile Strategy With a strategy defined in terms of expectations and requirements (covering growth, profitability, and markets), you can look at your overall mobile technology strategy. Two possible expectations reaching the largest possible audience improving the experiences of existing customers ■■ Which devices are your customers using? Development and Cost Targeting Multiple Platforms Addressing the Device Fragmentation Issue different browsers different screen sizes Outlining a B2C Strategy B2C scenario, a key decision is about how to make the application available and get consumers to notice it—whether it’s a free or paid application Delivery models for B2C The Freemium Model The Premium-with-Free-Sample Model it consists in making a significant portion of the content available for a small fee but leaving a fraction of the content free for everybody to access. The Quid-Pro-Quo Model (I give so that I can receive) A B2C strategy is built around two pillars: reaching out to users and making them happy. B2B scenario, you have a fixed number of users to reach. Here, your focus is on enabling users to return what you expect quickly, effectively, and securely. Security and middleware, in fact, are usually far more important in B2B scenarios B2B means that you’re helping another business set up a mobile infrastructure that will be used to serve a limited and largely controlled audience, such as the network of agents that operate in a given region. In a B2B scenario, you typically choose a mobile vendor by analyzing its mobile enterprise application platform (MEAP). A MEAP indicates the entire stack of mobile technologies, products, and services that a mobile vendor (e.g., Sybase) offers. MEAP is an all-round business partner that specializes in mobile solutions.
  3. Server-Side Device Detection Several thousand mobile browsers can connect to your site. Many of these have varying capabilities that may not match the site’s markup and logic requirements. In general, anyone who is developing a mobile site that goes beyond displaying some basic HTML should be concerned about the capabilities of the requesting browser and should plan different versions for each page to accommodate the various clients. In general, almost no mobile sites are created for just one type of browser audience. On the server, therefore, you can determine the requesting browser and match it to some known capabilities for that browser—for example, whether that browser supports JavaScript or local storage, or whether it can upload files. You also can discover the size of the screen—or simply determine whether it is a mobile device, a tablet, or perhaps a smart TV. need for device description repositories (DDRs) like the Wireless Universal Resource File (WURFL). An emerging trend is Responsive Web Design, which makes extensive use of CSS optimization and media queries to create dynamic layouts. Based on actual device width, pages resize their content dynamically—and do it without code, by simply relying on percentages. Such pages use these tricks to resize images, too. You can find a nice introduction to Responsive Web Design here: http://bit.ly/blRWZc.
  4. It is essential that a mobile site should load quickly and allow users to reach all main functionalities in just a few clicks or taps. The user interface should be extremely clear, but also clean and flawless to show the options available at any time, yet still making the act of choosing an option easy. After becoming familiar with the site, users often end up working with it semi-automatically, so even the position of a single button can have an impact on the quality of feedback that you receive. Note that the mobile Human-Computer Interaction (HCI) research field, although new, is very active, Luca Chittaro has a paper that effectively summarizes what mobile HCI means to developers and architects. You can read it here: http://goo.gl/lSG3s. A pragmatic (and then not necessarily exact) rule is that a mobile site rarely needs more than 20 percent of the features available in the full site. An SPI model requires a lot of JavaScript, partly written by you and for the most part imported from external libraries. You likely need quite a few of these libraries to provide for generic UI manipulation, templates, and data binding. Some of these libraries are based on jQuery and jQuery Mobile. These two libraries alone total some 200 KB (uncompressed) of script and style sheets.
  5. HTML has gone through two main ages — the age of static rendering and the age of dynamic rendering. An important change occurred in the late 1990s, when browser vendors made the representation of the displayed document modifiable via JavaScript HTML5 marks the beginning of the third age of the web in which HTML advances at a brisk pace toward becoming a true and full-fledged application delivery format The big change is that HTML5 is about client-side programming and about building applications that can run within the browser with limited (or no) interaction with the back end
  6. Originally developed by Nitobi, PhoneGap was acquired by Adobe in October 2011 and seems to be a centerpiece in Adobe’s mobile strategy
  7. Originally developed by Nitobi, PhoneGap was acquired by Adobe in October 2011 and seems to be a centerpiece in Adobe’s mobile strategy