Mobile Computing: a disruptive spreading trend Session 2: business models & technologies

26
Mobile Computing: a disruptive spreading trend Session 2: business models & technologies Emiliano Del Fiume, Business Development Manager, Unisys [email protected] Trento, 12 dec 2012 HOW DO DEVELOPERS TAKE CONTROL OF THEIR DESTINY IN A CROSS-PLATFORM WORLD?

description

HOW DO DEVELOPERS TAKE CONTROL OF THEIR DESTINY IN A CROSS-PLATFORM WORLD?. Mobile Computing: a disruptive spreading trend Session 2: business models & technologies. Emiliano Del Fiume, Business Development Manager, Unisys [email protected] Trento, 12 dec 2012. A genda. - PowerPoint PPT Presentation

Transcript of Mobile Computing: a disruptive spreading trend Session 2: business models & technologies

Mobile Computing: a disruptive spreading trend Session 2: business models & technologiesEmiliano Del Fiume, Business Development Manager, [email protected]

Trento, 12 dec 2012

HOW DO DEVELOPERSTAKE CONTROL OF THEIR DESTINY IN A CROSS-PLATFORM WORLD?

Agenda Session 1 Consumerization of IT What we do in mobility Organizations’ Point of View Let’s not reinvent the wheel… A practical way to approach the topic

Session 2 A new model to develop SW Native Apps vs Web Apps Developers’ tough choices Let’s put all togheter Recap

© 2012 Unisys Corporation. All rights reserved. 3

A new model to develop software Develop vs Aggregate: two approaches, two biz models

To get things done we can Build all from scratch (this includes also buying snippets to integrate) Aggregate services

Leveraging services is the new paradigm for tech and business reasons- XaaS means: pay per use, scale-up, granularity, standardization- A service is like OO: functionality comes from a black-box, it’s not my problem

to let it work properly, any issue links to SLAs not to direct fix from my team- Services = plug-ins: if I need to change I can, quickly and transparently- I can mix complex stuff even if I do not have the specific skills- Dramatically reduced “time to market” and…- …I can experiment with low budget- Support iterative development: try aggregating then, if

needed, grab specific pieces inside my core app

© 2012 Unisys Corporation. All rights reserved. 4

Most of key things are already here:It’s a good idea to create something new just aggregating them…

http://www.wsindex.org/http://www.programmableweb.com/apis/directory

http://www.service-repository.com/

A new model to develop software Develop vs Aggregate: two approaches, two biz models

Amazon Mechanical Turk

© 2012 Unisys Corporation. All rights reserved. 5

The XaaS model applies also to you, as a providerWe can (we should) replicate the model when we offer something, especially if we’re talking about mobile applications…

We have no chances to improve SLAs for our clients if we didn’t buy proper SLAs

We can gain offering different, even customized, levels of functionalities, availability, scalability, quantity (but not quality & UI: it has to be there always…)

Users are now accustomed to pay per use

Users are now accustomed to pay cheap prices ‘cause huge competition on Apps

WW we face tough economy issues therefore budgets shrink so “granularity” is appreciated by everyone!

Keep in mind the Store model to distribute your Apps: in some environments (ie: Apple) you cannot avoid it…

A new model to develop software Develop vs Aggregate: two approaches, two biz models

Many players build and offer free added-value services to drive people to buy something related to the compelling topic…

© 2012 Unisys Corporation. All rights reserved. 7

A new model to develop softwareWhat characteristics we should mind

Geolocalization is a key feature Intuitive, simple, gesture-based UIs Device integration (GPS, agenda, contacts…) Simplified application workflows (bear in mind if you modernize legacies) Single Page Application (SPA) approach rather than multi-page Do not tight data to device: cloud is something already in end-users’ minds Through stores you can multiply gains: do not be avid on price, look at potential

total sales (and remember users are accustomed to pay cheap prices and also business organizations are learning this lesson…)

Integration with social networks has two advantages: brings a huge number to potential “clients” to you is something people really really like. Really.

Be ready to leverage/support mobile payments keeping in mind Apple’s move (no support for NFC) splits the path…

Native Apps vs Web AppsThe never ending debate

© 2012 Unisys Corporation. All rights reserved. 9

Native Apps vs Web Apps: The never ending debateChoosing right kind of “App”

Scenario is varied…

Native apps Coded with a specific language

Hybrid appsRely on development frameworksleveraging Web techs & standards

Dedicated web appMobile web site tailored to a specific platform or form factor

Generic mobile appMobile web sites designed to match every web-enabled phone

© 2012 Unisys Corporation. All rights reserved. 10

Native Web App HybridApp Features

Graphics Native APIs HTML, Canvas, SVG HTML, Canvas, SVG

Performance Fast Slow Slow

Native look and feel Native Emulated Emulated

Distribution Appstore Web AppstoreDevice AccessCamera Yes No YesNotifications Yes No Yes

Contacts, calendar Yes No Yes

Offline storage Secure file storage Shared SQL Secure file system, shared SQL

Geolocation Yes Yes YesGesturesSwipe Yes Yes YesPinch, spread Yes No YesConnectivity Online and offline Mostly online Online and offline

Development skills ObjectiveC, Java, .NET HTML5, CSS, Javascript HTML5, CSS, Javascript

Source: DeveloperForce (http://wiki.developerforce.com)

Native Apps vs Web Apps: The never ending debateChoosing right kind of “App”: Tradeoffs

© 2012 Unisys Corporation. All rights reserved. 11

Source: www.asymco.com

Native Apps vs Web Apps: The never ending debateLet’s not simplify the reality!

© 2012 Unisys Corporation. All rights reserved. 12

Few players are offering converging platforms to manage the entire “Mobile lifecycle” (build & distribute + manage devices)

SAP Antenna Software Syclo (now SAP)

Key players are converging to Web standards: mainly HTML5 + Javascript:

MS, IBM, Google, Facebook and others agree on overall approach

Strangely, Gartner doesn’t agree…

Proliferation of (Web) frameworks: they can be an alternative to the above or can integrate

MDM platforms will become “commodity” in thefuture (according to SAP and others)

Store model is helpful for small developers but large companies often doesn’t like it (see FT…)

Native Apps vs Web Apps: The never ending debateHow IT players act

Gartner Magic Quadrant for MADP

© 2012 Unisys Corporation. All rights reserved. 13

Source: Gartner, august 2012

HTML5 is already a standard de facto with interesting capabilities Native video playback New tags to support Semantic Web, Media, etc. Offline & Storage Bi-directional optimizied connectivity (through Websockets) Native drag & drop Device access (GPS, phone) 2D, 3D, Graphics & Effects Advanced CSS Proposed extensions allow management of peculiar devices’ characteristics

Javascript is not the JS we used to know: now it’s a real A-grade language with advanced features Pros We can do real sophisticated things just with JS (including graphics) We can use JS also on server side (=simplify skill sets in project team)

Cons Legacy use of JS is not enough: developers have to update their skills

Native Apps vs Web Apps: The never ending debateWeb technologies and the skills…

© 2012 Unisys Corporation. All rights reserved. 14

With HTML5+Javascript+Json+XML+frameworks today we can achieve: Asyncronous programming model Loosely coupled layers Two-way optimized communications (with WebSockets) Data persistence Disconnected working even with Web App/Sites

Moreover: Security is already guaranteed by SSL Web services are well know to de-couple layers OpenID allows authentication through external authorities (FB) OAuth supports cross-domains authorization Round-trip avoidance was already possible with AJAX+CometIt’s already possible to build complex applications for mobile using the above technologies and standards (ie: LinkedIn app for mobile is 95% based on HTML5)

Native Apps vs Web Apps: The never ending debateWeb technologies and the skills…

Use of Javascript on server side is becoming a common approach, mainly leveraging the Google V8 engine + framework

© 2012 Unisys Corporation. All rights reserved. 15

Native Apps vs Web Apps: The never ending debateHow to choose the best tech approach

If you want to choose the right approach for you, mind this questions: How many platforms do we want/need to support? How important is the user experience (and what do we mean with UX)? How important is performance? What language(s) our team know? What’s about our budget? Do we already have tech platforms in-house capable to support mobile

development (i.e.: SAP SUP)?

But note that Most of recent tools and major players support

HTML+Javascript: IBM Worklight, MS VisualStudio… For internal Apps maybe your company picks up one

standard therefore a multi-platform development could be just an excessive zeal…

The Developer’s tough choices…

© 2012 Unisys Corporation. All rights reserved. 17

The Developer’s tough choicesUser Interface: one for all, customized, standard…

Multiple OSes and multiplce devices can suggest to Create one UI for all Be consistent with standard OS UIs Create customized UIs to fit layouts, dimensions, etc.

© 2012 Unisys Corporation. All rights reserved. 18

The Developer’s tough choicesUser Interface: one for all, customized, standard…

Source: Microsoft’s free book “Developing Modern Mobile Web Apps”

© 2012 Unisys Corporation. All rights reserved. 19

The Developer’s tough choicesPerformances & UX

If you develop Web App or Hybrid App avoid the fatal error to think like for usual Web Applications for desktops!

Average payload for a modern page is 1MB: it’s too much for mobile devices Multipage approach is really boring for users and wastes bandwidth New development paradigms imposed by OSes (iOS, Windows 8) do not allow you to waste

time, to hang the device, etc. Users are virtually always connected, their devices not surely!!

Solutions Websocket (replaces AJAX+Comet) and optimize a lot the channel avoiding HTTP headers Leverage CSS sprites Compress data (JSon vs XML) Do graphics on client, not images from server SPA model Leverage offline capabilities through local storage (user/session/DB) Preload data in async (during pauses) Rethink the application workflow: “mobilizing” rigidly the legacy application is too simplistic

© 2012 Unisys Corporation. All rights reserved. 20

The Developer’s tough choicesHow to mobilize the existing solutions

Mobile is not just about the device: don’t simplify! Virtual Desktops (just if you’re desperate! Doesn’t work to convince client to go to mobile!) For specific functionalities, leverage products’ capabilities (i.e.: BI dashboards) Rethink, in this order,

1. Process/procedure2. Application workflow3. User interaction

If you already have a Web Application you can reuse skills with Web App (great reuse maybe 95%, some compromises) Hybrid App (better UX and performances, less reuse)

Proxy solutions (especially for terminal-based applications) Scout specialized products according to your needs (i.e.: content delivery & management) Have a look at “Stores”: likely your needs are not so unique! Your users already know. The ecosystem of independent developers is huge: de-coupling layers you can let others to

develop your app while you update your back-end Openly look at external (cloud) services instead of re-writing functionalities.

Let’s put all togheter

Just an example…

Just an example…

OpenIDAmazon API(Rest WS)

Local Storage

JQuery Mobile PhoneGap Modernizr

Web App to Hybrid

Websocket

Let’s go beyond…

© 2012 Unisys Corporation. All rights reserved. 25

Final Recap

Mobile computing is not a matter of the device Cloud philosophy is key (quite mandatory) Social computing is a strong plus Maps are heavily used by users / Geolocalization is really useful Market is fragmented: 3 players doesn’t mean 3 devices You have freedom and flexibility to reuse existing skills, updating them Gaming & Mobile TV are the new frontier in mobile business Mobile payments are just around the corner: do not miss it! Users want ubiquity for their data (cloud, again) Security is not an obstacle, is just something to manage Mobile devices can help to improve security on legacy tasks Technologies, products & standards are already here: do not wait! In businesses, Windows 8 will play the major role Try Web Apps to modernize existing applications Go Hybrid until you need native Apps for clear reasons

Docs & slides for you:http://emiliano.delfiume.it/TR

Thank you Q & A