worklight building, deploying and running mobile applications

29
Worklight: building, deploying, and running mobile applications Daniel Yellin, PhD, Director, IBM Mobile Platform Development and Israel Software Lab © 2012 IBM Corporation Director, IBM Mobile Platform Development and Israel Software Lab

Upload: meda-conferences

Post on 09-May-2015

1.170 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Worklight building, deploying and running mobile applications

Worklight: building, deploying, and running mobile applications

Daniel Yellin, PhD, Director, IBM Mobile Platform Development and Israel Software Lab

© 2012 IBM Corporation

Director, IBM Mobile Platform Development and Israel Software Lab

Page 2: Worklight building, deploying and running mobile applications

IBM Confidential

DO NOT DISTRIBUTE WITHOUT EXPLICIT PERMISSION

TO BE USED FOR GOMOBILE PRESENTATION EXCLUSIVELY

© 2012 IBM Corporation

Page 3: Worklight building, deploying and running mobile applications

Overview

�Example application

�Key features of Worklight

�Future Directions

© 2012 IBM Corporation

Page 4: Worklight building, deploying and running mobile applications

CityPulse: Connecting municipalities with their citizens

© 2012 IBM Corporation

Page 5: Worklight building, deploying and running mobile applications

Mobile citizens

© 2012 IBM Corporation

Page 6: Worklight building, deploying and running mobile applications

Analytics

© 2012 IBM Corporation

Page 7: Worklight building, deploying and running mobile applications

Challenges

� Supporting multiple devices

� Application governance and management

� Analytics

© 2012 IBM Corporation

Page 8: Worklight building, deploying and running mobile applications

Fast and cost-effective development, integration and management of rich, cross-platform mobile

applications

Delivering for multiple mobile platformsIBM Worklight

Client Challenge

Using standards-based technologies and tools and delivering an enterprise-grade platform that meets the needs of mobile employees and customers

© 2012 IBM Corporation

Key Principles

employees and customers

Mobile-optimized middleware

� Open approach to mobile development and 3rd-party integration

� HTML5 as the core cross-platform technology

� Reduces the overhead for enterprise-grade mobile apps: integration, security and authentication, application management, analytics, development process,

� B2C, B2E, and B2B

Page 9: Worklight building, deploying and running mobile applications

Approaches to application developmentNative AppsNative Apps

Platform-specific.

Requires unique

expertise, pricy and

long to develop.

Can deliver higher

user experience.

Hybrid Apps -

Mixed

Hybrid Apps -

MixedUser augments web

code with native

language for unique

needs and

maximized user

experience.

Hybrid Apps - WebHybrid Apps - Web

HTML5 code and

Worklight runtime

libraries packaged

within the app and

executed in a native

shell.

Web AppsWeb Apps

Written in HTML5

JavaScript and

CSS3. Quick and

cheap to develop,

but less powerful

than native.

Browser AccessBrowser Access Hybrid Apps - WebHybrid Apps - Web Hybrid Apps - MixedHybrid Apps - Mixed Native AppsNative Apps

© 2012 IBM Corporation

Native Application

Device APIs

1001010101011101001010

0100101011101001001101

0101010100100100101111

0010011001010101001010

1010100101010101010101

0101011111100000101010

1010101001001010101010

1010001111010100011110

1010011101010111110010

1101111010001011001110

Native Shell

Web Native

Device APIs

<!DOCTY

PE html

PUBLIC

created

2003-12

</p>

</body>

</html>

1001010

1010111

0100101

0101010

1010010

0100101

1110010

0110010

Native Shell

Web Code

<!DOCTYPE html PUBLIC

<html>

<! - - created 2003-12-1

<head><title>XYZ</title

</head>

</body>

</html>

Device APIs

Mobile Browser

Web Code

<!DOCTYPE html PUBLIC

<html>

<! - - created 2003-12-12 -

-

<head><title>XYZ</title>

</head>

<body>

</p>

</body>

</html>

Browser Access Downloadable Downloadable Downloadable

Page 10: Worklight building, deploying and running mobile applications

Worklight ServerMobile middleware offering unified push notifications,

Worklight StudioThe most complete, extensible development environment with maximum code reuse and per-device optimization

Worklight delivers all types of native, hybrid, and mobile web in a

single solution

© 2012 IBM Corporation

Mobile middleware offering unified push notifications, version management, security and integration

Worklight Console & Enterprise App StoreA web-based console for real-time analytics and control of your mobile apps and infrastructure

Worklight Runtime ComponentsExtensive libraries and client APIs that expose and interface with native device functionality and the

Worklight Server←←←←

Page 11: Worklight building, deploying and running mobile applications

Common web codebase facilitates reuse

• Common code is

placed in a primary

location

• Environments

optimizations allow

overrides to the

common code

• Common code is

placed in a primary

location

• Environments

optimizations allow

overrides to the

common code

© 2012 IBM Corporation

common code

• Worklight optimizes

the delivery and

merge of the various

environments

common code

• Worklight optimizes

the delivery and

merge of the various

environments

Page 12: Worklight building, deploying and running mobile applications

Native build and test with device SDKs

© 2012 IBM Corporation

• Create native components as needed

• Final packaging step for hybrid apps

• Debug native components using device SDK simulators

Page 13: Worklight building, deploying and running mobile applications

Different Screen Sizes

Different Screen Densities

Provide different user experiences with runtime skins

© 2012 IBM Corporation

Different Input Method

Screen Densities

Supportfor HTML5

Page 14: Worklight building, deploying and running mobile applications

Mobile UI visualization

Worklight Design

Perspective

© 2012 IBM Corporation

Mobile Views• Select which view

displays in design tab• Modify view properties• Create and delete

mobile views

Rich Page Editor• Source, Design and Split

views• UI rendering using

browser engine, synched with source pane

Palette• Drag and drop visual

elements into the Editor pane.

• Offers HTML constructs and Dojo widgets

Page 15: Worklight building, deploying and running mobile applications

Extensive libraries and client APIs that expose

and interface with native device functionality

and the Worklight server

•Cross-Platform Compatibility Layer

•Server Integration Framework

Extensive libraries and client APIs that expose

and interface with native device functionality

and the Worklight server

•Cross-Platform Compatibility Layer

•Server Integration Framework

Worklight – Device Runtime

© 2012 IBM Corporation

•Server Integration Framework

•Encrypted Storage

•Offline Authentication

•Runtime Skinning

•Statistics and Diagnostics Reporting

•Server Integration Framework

•Encrypted Storage

•Offline Authentication

•Runtime Skinning

•Statistics and Diagnostics Reporting

Page 16: Worklight building, deploying and running mobile applications

• A mechanism for

storing sensitive data on the client side

• Implemented using HTML5 local storage

technology

• Encrypts data with a combination of user-

provided key and server-retrieved randomly

• A mechanism for

storing sensitive data on the client side

• Implemented using HTML5 local storage

technology

• Encrypts data with a combination of user-

provided key and server-retrieved randomly

Encrypted cache on-device

© 2012 IBM Corporation

provided key and server-retrieved randomly

generated token for security

• Stores data using key-value pairs

• Like a security deposit box – it will remain

open until you close it, so don’t forget to

close the cache once you are done working

with it

provided key and server-retrieved randomly

generated token for security

• Stores data using key-value pairs

• Like a security deposit box – it will remain

open until you close it, so don’t forget to

close the cache once you are done working

with it

Page 17: Worklight building, deploying and running mobile applications

An middleware component which deliveries unified notifications, runtime skinning, version management, security features, and integration Services

• Distribution of mobile web apps

• Enterprise connectivity:

• Secure client/server connectivity

• Direct access to enterprise back-end

An middleware component which deliveries unified notifications, runtime skinning, version management, security features, and integration Services

• Distribution of mobile web apps

• Enterprise connectivity:

• Secure client/server connectivity

• Direct access to enterprise back-end

Worklight Server

© 2012 IBM Corporation

• Direct access to enterprise back-end

data and transaction capabilities

• Authentication enforcement

• Client control:

• Application version management and

remote disabling

• Direct update of application code

• Unified Push Notifications

• Aggregation of usage statistics

• Direct access to enterprise back-end

data and transaction capabilities

• Authentication enforcement

• Client control:

• Application version management and

remote disabling

• Direct update of application code

• Unified Push Notifications

• Aggregation of usage statistics

Page 18: Worklight building, deploying and running mobile applications

Worklight’s Unified Push Notifications Framework

Back-end

System

Back-end

SystemBack-end System

Back-end System

Polling Adapters

Unified

Notification State

Database

iOSDispatcher

Android Dispatcher

BlackBerry

Apple

Push Servers (APN)

Google Push

Servers (C2DM)

Worklight

Client-side

Push

Services

Worklight

Client-side

Push

Services

Worklight Worklight

iOS

Push API

iOS

Push API

Android Push APIAndroid

Push API

© 2012 IBM Corporation

Back-end System

Back-end SystemBack-end System

Back-end System

Message-based

Adapters

Unified Push API

User-Device

Database

BlackBerry Dispatcher

Win Phone Dispatcher

SMS Dispatcher

RIM Push Servers

Microsoft Push

Servers

SMS/MMS BrokersAdministrative Console

Worklight Client-side

Push Services

Worklight Worklight Client-side

Push Services

BlackBerryPush API

BlackBerryPush API

WindowsPush APIWindowsPush API

Broker APIBroker API

Roadmap

Roadmap

Roadmap

Page 19: Worklight building, deploying and running mobile applications

Enforcing security updates

Remote Direct

Security Features Mapping

Compatibility App

Protecting data on the device

Encrypted Offline Secure

challenge-

© 2012 IBM Corporation

Remote disable

Direct update

Providing robust authentication and

authorization

Auth

integration

framework

Data protection

realms

Device provisioning

Streamlining Corporate security

processes

Mobile platform as a trust factor

Application Security

Code protection

SSL with server identity

verification

Proven platform security

Compatibility with jailbreak detection libs

App authenticity

testing

Encrypted offline cache

Offline authentication

challenge-response on

startup

Page 20: Worklight building, deploying and running mobile applications

© 2012 IBM Corporation20

Page 21: Worklight building, deploying and running mobile applications

Direct update

Native Shell

Pre-packaged resources

1 Download

App Store

2 Transfer

1. Web resources initially

packaged with the app to

ensure first offline availability

2. Web resources transferred to

app's cache storage

3. App checks for updates

1. Web resources initially

packaged with the app to

ensure first offline availability

2. Web resources transferred to

app's cache storage

3. App checks for updates

© 2012 IBM Corporation

Worklight Server

4 Update web resource

Web resources

Cached resources

2 Transfer

3 Check for updates

3. App checks for updates

• On startup

• On return to foreground

4. Updated web resources

downloaded when

necessary

3. App checks for updates

• On startup

• On return to foreground

4. Updated web resources

downloaded when

necessary

Page 22: Worklight building, deploying and running mobile applications

Direct update – client user experience

1. Detection upon startup and foreground

2. Dialog for easy user selection

3. App download progress bar

© 2012 IBM Corporation

4. Application restarts automatically

Page 23: Worklight building, deploying and running mobile applications

Enterprise Store: Download Application over-the-air to the device

© 2012 IBM Corporation

Page 24: Worklight building, deploying and running mobile applications

Provide Feedback or switch back

© 2012 IBM Corporation

Page 25: Worklight building, deploying and running mobile applications

Feedback aggregated on Application Center console

© 2012 IBM Corporation

Page 26: Worklight building, deploying and running mobile applications

Analytics

� IBM Worklight comes with an extensive reporting mechanism

� Both predefined and custom actions can be logged and processed

� Server side BIRT reports viewer application to view reports generated by WL server

� Separate reports are generated for application usage and notifications data (both push and

SMS)

© 2012 IBM Corporation26

Page 27: Worklight building, deploying and running mobile applications

Application Governanc

e

• Enterprise App Store

• Application Governance

• Integration with IBM MDM (IBM Endpoint Manager)

Platform

• SMS notifications

• New target devices: Windows 8, Java ME

• New integration points: JMS adapter

New features and enhances in IBM Worklight v5.0.5

© 2012 IBM Corporation27

Advanced Mobile

capabilities

• on-device, offline available, reliable, scalable, encryptable, and syncable JSON database

• Server triggered security challenges

Apps and Tooling

• Native libraries for iOSand Android

• jQuery tooling support

• Updates: iOS6,Android 4.1, Cordova 2.2

IBM Worklight

V5.0.5

Page 28: Worklight building, deploying and running mobile applications

New environment – Windows 8 Metro Applications

� IBM Worklight brings support for Windows 8 Metro Applications

� Windows 8 environment can be added from Add New Environment wizard

� Once built IBM Worklight will generate a native Windows 8 Metro Application project that

can be edited and compiled using Microsoft Visual Studio

© 2012 IBM Corporation28

Page 29: Worklight building, deploying and running mobile applications

Legal Disclaimer

• © IBM Corporation 2011. All Rights Reserved.• The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained

in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

• References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

• If the text contains performance statistics or references to benchmarks, insert the following language; otherwise delete:Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

• If the text includes any customer examples, please confirm we have prior written approval from such customer and insert the following language; otherwise delete:All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.

• Please review text for proper trademark attribution of IBM products. At first use, each product name must be the full name and include appropriate trademark symbols (e.g., IBM Lotus® Sametime® Unyte™). Subsequent references can drop “IBM” but should include the proper branding (e.g., Lotus Sametime Gateway, or WebSphere Application Server).

© 2012 IBM Corporation29

Lotus® Sametime® Unyte™). Subsequent references can drop “IBM” but should include the proper branding (e.g., Lotus Sametime Gateway, or WebSphere Application Server). Please refer to http://www.ibm.com/legal/copytrade.shtml for guidance on which trademarks require the ® or ™ symbol. Do not use abbreviations for IBM product names in your presentation. All product names must be used as adjectives rather than nouns. Please list all of the trademarks that you use in your presentation as follows; delete any not included in your presentation. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both.

• If you reference Adobe® in the text, please mark the first use and include the following; otherwise delete:Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.

• If you reference Java™ in the text, please mark the first use and include the following; otherwise delete:Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

• If you reference Microsoft® and/or Windows® in the text, please mark the first use and include the following, as applicable; otherwise delete:Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.

• If you reference Intel® and/or any of the following Intel products in the text, please mark the first use and include those that you use as follows; otherwise delete:Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

• If you reference UNIX® in the text, please mark the first use and include the following; otherwise delete:UNIX is a registered trademark of The Open Group in the United States and other countries.

• If you reference Linux® in your presentation, please mark the first use and include the following; otherwise delete:Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.

• If the text/graphics include screenshots, no actual IBM employee names may be used (even your own), if your screenshots include fictitious company names (e.g., Renovations, Zeta Bank, Acme) please update and insert the following; otherwise delete: All references to [insert fictitious company name] refer to a fictitious company and are used for illustration purposes only.