developing a modern mobile app strategy

77
Developing a Moder Mobile App Strateg Todd Anglin EVP Product Strategy, Telerik

Upload: todd-anglin

Post on 15-May-2015

3.731 views

Category:

Technology


1 download

DESCRIPTION

Mobile apps are important. There is little debate of that. But how you build, maintain, and deploy mobile apps remains the source of great debate for CIOs and developers alike. Unfortunately, there is no "one size fits all" mobile app strategy, so it is critical to understand how to choose the right technology for the right app. In this session, we will explore the four key approaches for building mobile apps, and establish a framework that will help you develop a mobile app strategy guaranteed to help you select the right technology for your next project.

TRANSCRIPT

Page 1: Developing a Modern Mobile App Strategy

Developing a Modern Mobile App StrategyTodd AnglinEVP Product Strategy, Telerik

Page 2: Developing a Modern Mobile App Strategy

WhatWhyWhen

How

Strategy Execution

Page 3: Developing a Modern Mobile App Strategy

Mobile is disrupting software development.

Page 4: Developing a Modern Mobile App Strategy

Yesterday Today

X

Page 5: Developing a Modern Mobile App Strategy

#winning

BEFORE

Page 6: Developing a Modern Mobile App Strategy

AFTER

Page 7: Developing a Modern Mobile App Strategy

82%COMPANIES WITHOUT A MOBILE STRATEGY (YET)

Source: SAP, 2012

Page 8: Developing a Modern Mobile App Strategy

40%DEVELOPERS STARTING A NATIVE APP THAT SHOULD HAVE BEEN BUILT WITH HTML5

Source: Kendo UI Global Developer Survey, 2013

31%DEVELOPERS STARTING A HTML5 APP THAT SHOULD HAVE BEEN BUILT WITH HTML5

Page 9: Developing a Modern Mobile App Strategy

You need a strategy to deal with this disruption.

Page 10: Developing a Modern Mobile App Strategy

@toddanglinEVP Product Strategy

Page 11: Developing a Modern Mobile App Strategy

Define the disruption

Define the approaches

Define the strategy

Page 12: Developing a Modern Mobile App Strategy

How do you deal with this disruption?

Why does this disruption matter?

Page 13: Developing a Modern Mobile App Strategy

UI is harder than ever.

Testing is harder than ever.

Change is happening faster than ever.

Page 14: Developing a Modern Mobile App Strategy

UI is harder than ever.

Multiple skillsetsMany platforms

Many SDKsWildly different UX

Unpredictable screensMore time consumingIndirect debuggingRapidly changing

Page 15: Developing a Modern Mobile App Strategy

Business logicData layerData validationService API

Windows or Web UI

Page 16: Developing a Modern Mobile App Strategy

Business logicData layerData validationService API

Desktop UIPhone UITablet UI[Multi-platform]

Page 17: Developing a Modern Mobile App Strategy

SimplicitySpeed

User Experience

MOBILE EXPECTATIONS

Page 18: Developing a Modern Mobile App Strategy

UGLY ENTERPRISE APPS DON’T CUT IT ON MOBILE

Page 19: Developing a Modern Mobile App Strategy

Testing is harder than ever.

Page 20: Developing a Modern Mobile App Strategy

① Simulators are insufficient② App performance varies

GREATLY per device③ More devices, platforms

still arriving

Page 21: Developing a Modern Mobile App Strategy

Android fragmentation

Page 22: Developing a Modern Mobile App Strategy

Change is happening faster than ever.

Source: Gartner, 2012

Page 23: Developing a Modern Mobile App Strategy

I'll just tell my users what device to use."

"-said nobody

Page 24: Developing a Modern Mobile App Strategy

On average, CIOs report that they support 3.5

mobile platforms in 2012

Source: Gartner, 2012

Page 25: Developing a Modern Mobile App Strategy

Assessing or Implementing

60%

Implemented19%

No plans21%

79%BYOD

Source: Cisco/PC Connection BYOD Survey, 2013

Page 26: Developing a Modern Mobile App Strategy

Impr

oved

mob

ility

for t

he w

orkfor

ce

Employ

ees pr

efer

red

own

device

s

Secu

re com

pany

dat

a on

per

sona

l dev

ices

Cost s

avings

Impr

oved

pro

duct

ivity

Easie

r to

man

age

49% 45% 41% 40% 40%

22%

Source: Cisco/PC Connection BYOD Survey, 2013

Page 27: Developing a Modern Mobile App Strategy

UI is harder than ever.

Testing is harder than ever.

Change is happening faster than ever.

Page 28: Developing a Modern Mobile App Strategy
Page 29: Developing a Modern Mobile App Strategy

How do you deal with this disruption?

What's the right way to target mobile?

Page 30: Developing a Modern Mobile App Strategy

Reach of

Web

Richness of

Native

Efficiency of

Hybrid

$ $$$

Page 31: Developing a Modern Mobile App Strategy

The Approaches

Hybrid

Web

Native

Page 32: Developing a Modern Mobile App Strategy

Understanding when to apply each approach is the key to a successful mobile strategy.

Page 33: Developing a Modern Mobile App Strategy

How do you know which approach is right for your next app?

Page 34: Developing a Modern Mobile App Strategy

Know what you’re building!(in a word: requirements)

Page 35: Developing a Modern Mobile App Strategy
Page 36: Developing a Modern Mobile App Strategy
Page 37: Developing a Modern Mobile App Strategy
Page 38: Developing a Modern Mobile App Strategy

NATIVE WEB HYBRID

Page 39: Developing a Modern Mobile App Strategy

NATIVE

Page 40: Developing a Modern Mobile App Strategy

Use platform-specific APIs and SDKs to build and package apps.

Page 41: Developing a Modern Mobile App Strategy

Essential Skills

Objective-C, Java, .NET, HTML/JavaScript

Essential Tools

XCode (for iOS), Eclipse (for Android), Visual Studio (for WinPhone)

Platform Reach

Each app only reaches one platform

Sharable Code

0% (No UI, No logic)

Page 42: Developing a Modern Mobile App Strategy

Xcode

UIKitObjC

Eclipse*

XMLJava

Eclipse*

Poly*Poly*

Page 43: Developing a Modern Mobile App Strategy

Code: $150/hr * 1,500hrs ~ $225k

x (Number of Platforms)

Design: $150/hr * 225hrs ~ $34k

Other: $100/hr * 150hrs ~ $15k

Cost: $275,000+ Maintanence (~$60k)

Page 44: Developing a Modern Mobile App Strategy
Page 45: Developing a Modern Mobile App Strategy

NATIVE

PROS CONS

Complete access to device hardware, APIs

Multiple implementations required to reach multiple platforms

Installable, Can be app store deployed

Multiple skill sets and programming languages required

Maximum control over performance

Requires installation (and device provisioning if private deployment desired)

Powerful platform-specific development & debugging tools direct from platform vendors

New tools needed to manage app security, enforce data security policies

Page 46: Developing a Modern Mobile App Strategy

(MULTI-PLATFORM) NATIVE

Use a single language to develop applications that targeting an abstraction layer to access native device APIs and SDKs across platforms.

Common Examples: Xamarin, Appcelerator

Page 47: Developing a Modern Mobile App Strategy

Essential Skills

Depends on the multi-platform solution (examples: C#, JavaScript)

Essential Tools

Usually a custom development environment

Platform Reach

Limited to platforms supported by underlying compiler

Sharable Code

Partial (UI is generally not sharable)

Page 48: Developing a Modern Mobile App Strategy

WEB APPS

INSTALLED APPS

Page 49: Developing a Modern Mobile App Strategy

INSTALLED APPS

Deployment Updates

Analytics Security

Page 50: Developing a Modern Mobile App Strategy

DEPLOYMENT MANAGEMENT

ANALYTICS SECURITY

Private app storesBeta test user deploymentPublishing & approval

Offline metricsCross-platform viewCrash reports

Device managementUpdating apps

User access to appsRevoking access

Securing data on device

Page 51: Developing a Modern Mobile App Strategy

WEB

Page 52: Developing a Modern Mobile App Strategy

Use web standards to create applications and the browser to deploy

Page 53: Developing a Modern Mobile App Strategy

Essential Skills

HTML, JavaScript, CSS

Essential Tools

Anything capable of developing web apps

Platform Reach

iOS, Android, Windows Phone, or any HTML5 capable mobile browser

Sharable Code

100% (UI + Logic)

Page 54: Developing a Modern Mobile App Strategy

RESPONSIVEWEBDESIGN

MOBILEWEBAPPS

Page 55: Developing a Modern Mobile App Strategy
Page 56: Developing a Modern Mobile App Strategy
Page 57: Developing a Modern Mobile App Strategy

DEMOMOBILE WEB APPS

Page 58: Developing a Modern Mobile App Strategy

WEB

PROS CONS

Familiar, very low developer learning curve

Limited access to device hardware, APIs

Easy to deploy, No software installs

Poor offline support, requires "always on" Internet connection

Easy to share code with desktop websites

Unable to "install" on a device or publish via an app store

Maximum reach Unable to match native performance for rich, animated interfaces*

Reuse existing security and software management solutions

Open standards-based platform (no vender lock-in)

Page 59: Developing a Modern Mobile App Strategy

HYBRID

Page 60: Developing a Modern Mobile App Strategy

Use web standards to create applications and

native “wrappers” to package and enrich.

Page 61: Developing a Modern Mobile App Strategy

Native Shell +SDK Proxy

NativeApp

HTML/JS/CSS App

Page 62: Developing a Modern Mobile App Strategy

Any IDE

HTMLJS

Page 63: Developing a Modern Mobile App Strategy

Essential Skills

HTML, JavaScript, CSS, Hybrid container (such as Apache Cordova)

Essential Tools

Anything used for web development* + hybrid SDKs

Platform Reach

Limited to reach of hybrid container, but most reach all major platforms

Sharable Code

Almost 100% (Some platform specific UI may be desired)

Page 64: Developing a Modern Mobile App Strategy

DEMOHYBRID MOBILE APPS

Page 65: Developing a Modern Mobile App Strategy
Page 66: Developing a Modern Mobile App Strategy

HYBRID

PROS CONS

Low learning curve for web developers

Performance limited to WebView perf

Installed, can be app store deployed

Requires installation (and device provisioning if private deployment desired)

One code base for all platforms

New tools needed to manage app security, enforce data security policies

Easy to transition from web to hybrid development, reuse code

Extensive access to device hardware, APIs

Page 67: Developing a Modern Mobile App Strategy

NATIVE WEB HYBRID

Page 68: Developing a Modern Mobile App Strategy

TIEING IT ALL TOGETHERTHE STRATEGY

MODERNMOBILESTRATEGYDEFINED

Page 69: Developing a Modern Mobile App Strategy

Know your app requirements.

Page 70: Developing a Modern Mobile App Strategy

You could...

Choose a"one-size-fits-all" solution

Bolt-on a "mobile only"

solution

Create a"mix-and-match" patchwork solution

Inefficient. Unoptimized. Incomplete.

Page 71: Developing a Modern Mobile App Strategy

Reach of

Web

Richness of

Native

Efficiency of

Hybrid

Web Hybrid

Native

Page 72: Developing a Modern Mobile App Strategy

Web

• No device access needed

• Rapidly changing requirements

Hybrid

• Need basic device hardware or API access

• Need to reach many platforms

Native

• Need maximum hardware access

• Limited platform targets

Page 73: Developing a Modern Mobile App Strategy

Hybrid

Middleware

Native Web

Experience Cost

AgilityPerformance

[Forrester]

Page 74: Developing a Modern Mobile App Strategy

`

http://bit.ly/mobileapproachstrategy

Page 75: Developing a Modern Mobile App Strategy

"Through 2014, JavaScript performance will push HTML5 and the browser as a mainstream application developer environment. There will be long shift to HTML5 from native apps as HTML5 becomes more capable. But native apps won’t disappear, and will always offer best experiences."-Garnter, 2013

Page 76: Developing a Modern Mobile App Strategy

A smart mobile strategy uses a mix of web, hybrid, and native development to optimize the time and cost of delivering and maintaining an app to each app's requirements. -Me

Page 77: Developing a Modern Mobile App Strategy

@toddanglinname

twitter

@telerik.com

employer

email

Thanks!