© 2012 IBM Corporation2
Host/Mainframe
Client/Server
Web/Desktop
Mobile/Wireless/Cloud
Mobile is different:
•Ubiquitous computing
•Mixed models – web/native/hybrid
•A different type of app – context aware
•Revolutionary to business models
MOBILE: the next stage in computing’s evolution
2
© 2012 IBM Corporation3
2001 Nokia1995 Palm500,000 units sold in 6mts.70% market share
40% Market share of all mobile phones
Fastest growing stock. 56% of smartphones, 77% 3yr CAGR (19.7% share in 10/11
2008 RIMMost valuable company in the world, 27.3% of US smartphones
2011 Apple
2015+ ??2013+ AndroidHas 55% of the Globalsmartphone market Q2/2012*
Mobile handset dominance and OS keeps shifting
* Gartner's global smartphone market share
© 2012 IBM Corporation4
Mobile apps – new challenges
Controlling the growing portfolio of applications deployed “in the wild”
Connecting the enterprise back-end services in a secure and scalable manner
Creating rich, yet cost-effective mobile apps in a fragmented technological landscape.
4
© 2012 IBM Corporation5
Agenda
1
5
2
Exploring IBM Worklight
Worklight Studio
Worklight Console
3 Worklight Application Center
4 Worklight Server and Runtime Components
© 2012 IBM Corporation6
Client Challenge
Key Capabilities
Using standards-based technologies and tools and delivering an enterprise-grade services layer that meets the needs of mobile employees and customers
Mobile optimized middleware• Open approach to 3rd-party integration• Mix native and HTML• Strong authentication framework• Encrypted offline availability• Enterprise back-end connectivity• Unified push notifications• Data collection for analytics• Direct updates and remote disablement• Packaged runtime skins
IBM Worklight goes beyondmobile app UI creation to
deliver full mobile middleware.
IBM Worklight: A mobile application platform Speeding the development, integration and management of mobile applications
© 2012 IBM Corporation8
Worklight ServerUnified notifications, runtime skins, version management, security, integration and delivery
Worklight ConsoleA web-based console for real-time analytics and control of your mobile apps and infrastructure
Worklight StudioThe most complete, extensible environment with maximum code reuse and per-device optimization
Worklight overview
Worklight Runtime ComponentsExtensive libraries and client APIs that expose and interface with native device functionality←
Worklight Application CenterDevelopment team provisioning, enterprise app provisioning and governance, feedback management
© 2012 IBM Corporation9
Worklight Architecture Feedback Management
Device Runtime
Cross-Platform Compatibility Layer
Encrypted and Syncable Storage
Runtime Skinning
Server Integration Framework
Reporting for Statisticsand Diagnostics
Ap
plic
atio
n C
od
e
Worklight Console
Push /SMS Management
Reporting and Analytics
App VersionManagement
Blackberry
Android
iOS
Windows Phone
Java ME
Windows 8
SDKs
Mobile Web
Desktop Web
HTML5, Hybrid, and Native Coding
Optimization Framework
Integrated Device SDKs
3rd Party Library Integration
Bu
ild E
ng
ine
Worklight Studio1
Public App Stores
Worklight Application Center
Development Team Provisioning
App Feedback Management
Enterprise App Provisioning and Governance
2 3
En
terp
rise
Bac
ken
d S
yste
ms
&
Clo
ud
Ser
vice
s
Worklight Server
User authentication and mobile trust
Mashups and servicecomposition
JSON Translation
Adapter Library for backend connectivity
Sta
ts A
gg
reg
atio
n
Unified PushNotifications
Client-SideApp Resources
Direct Update
Mobile Web Apps
4
5
© 2012 IBM Corporation10
Platform support� Supported Eclipse Versions
− Juno 4.2, Indigo 3.7.2, and Helios 3.6.2− Supported distributions: Eclipse Classic and
Eclipse IDE for Java [EE] developers
� Supported Mobile OS− Android 2.2, 2.3, 4.0, 4.1, 4.2− iOS 5, iOS 6, iOS 6.1− Windows 8, Windows RT, Windows Phone 8− Java ME MIDP 2.0
� Third-party Library Support− Apache Cordova (previously PhoneGap)− Dojo Mobile− jQuery− Sencha
� Supported Application Servers– WebSphere 7 & 8 (Distributed | zLinux)– WebSphere 8.5, 8.55 Liberty Profile
(included), ND/Base (not included)(Distributed | zLinux | Mac OS X [development])
– Apache Tomcat 7 (Linux | Windows | Mac OS X [development])
� Supported Databases– DB2 Enterprise Server Edition v9.7, v10.1– Apache Derby, SDK 10.8 (included), or
later– Oracle 11g Database server, Standard or
Enterprise Editions, release 1 or later– MySQL 5.1
See product documentation for latest prereqs.
© 2012 IBM Corporation11
Agenda
1
5
2
Exploring IBM Worklight
Worklight Studio
Worklight Console
3 Worklight Application Center
4 Worklight Server and Runtime Components
© 2012 IBM Corporation12
Worklight StudioEclipse Based IDE� Native, hybrid and standard web developmentEnvironment-specific optimization� Common code with overrides/extensions� Native development options� Runtime skins3rd-party library integration
Device SDK integration� Access to emulators and debugging toolsSupports auto-complete and validation� The IDE includes the Tools, Worklight Server and
database (No separate installs required anymore)
Blackberry
Android
iOS
Windows Phone
Java ME
Windows 8
SDKs
Mobile Web
Desktop Web
HTML5, Hybrid, and Native Coding
Optimization Framework
Integrated Device SDKs
3rd Party Library Integration
Bu
ild E
ng
ine
Worklight Studio1
© 2012 IBM Corporation13
Preview in browser
Perform device specific tests in the Mobile Browser Simulator: supports PhoneGap and Worklight client API
© 2012 IBM Corporation14
Worklight Studio – Common Code Structure
common resources serve as the basis for the optimized environments that may be added later. • hold resources that are shared by all environments.
lib directory stores 3rd party library files for the project
js (JavaScript files)• auth.js – authentication • messages.js – internationalization• myApp.js - application code
MyApp.html file is initially configured as main file
application-descriptor.xml• contains reference to "mainfile“• enable authentication (onDemand, onStartup)• worklightRootURL (application URL)• environment specific references
© 2012 IBM Corporation15
Worklight Studio - Environment Optimization
JavaScript from an environment folder is appended to the same file in the common folder
CSS files from an environment folder will be appended to the CSS files in the common folder
HTML files from an environment folder will override files in the common folder
images from an environment folder will override files in the common folder
© 2012 IBM Corporation18
Rich page editor (WYSIWYG UI construction)
Worklight Studio includes a new perspective available for Worklight projects. The perspective provides a default layout, optimized for development of hybrid mobile applications, including a rich-page, drag-and-drop editor, palette of components, properties view, beautified outline, and raw editable source code for immediate UI customization.
© 2012 IBM Corporation19
Worklight Studio - Runtime Skins
Skins provide support for multiple form factors in a single executable file for devices of the same OS family.
• Different screen sizes• Different screen densities• Different input methods
Skins are a sub-variant of an environment packaged in a single app
Decision on which skin to use is done automatically at runtime
Developer-controlled JavaScript file run at app startup determines which skin to load
© 2012 IBM Corporation21
1. Create an Worklight project and application in Eclipse via Worklight Studio
2. Add a mobile environment of your choosing
3. Add app content
4. Build and deploy it to the Worklight Server
5. Use the specific environment tools to deploy to the device
• Eclipse for Android• Xcode for iOS• Visual Studio for Windows Phone• Ripple for BlackBerry
Centralized Build
WorklightBuild System
SourceCode
Repository
© 2012 IBM Corporation22
Secure back-end integration with Worklight Adapters
Out of the box support for SQL, HTTP (REST and SOAP) and JMS Adapters
XML-based declarative specification
Multi-source data mashups
Simplified adapter testing
Server-side debugging
Access to session data and user properties
Worklight Studio -Back-end Integration
© 2012 IBM Corporation23
Agenda
1
5
2
Exploring IBM Worklight
Worklight Studio
Worklight Console
3 Worklight Application Center
4 Worklight Server and Runtime Components
© 2012 IBM Corporation24
Application Center
The Worklight Application Center enables companies to easily set up an enterprise app store for their enterprise.
The Application Center provides:
� Administrators with fine-grained control over the distribution of mobile apps across the enterprise, including ACL and LDAP support;
� Employees with one-stop shopping for the latest apps needed by their department and optimized for their device;
� Developers with an easy way to distribute mobile builds and elicit feedback from development and test team members.
Public App Stores
Worklight Application Center
Development Team Provisioning
App Feedback Management
Enterprise App Provisioning and Governance
2
© 2012 IBM Corporation27
Agenda
1
5
2
Exploring IBM Worklight
Worklight Studio
Worklight Console
3 Worklight Application Center
4 Worklight Server and Runtime Components
© 2012 IBM Corporation28
Worklight ServerAdapters with support for SAP, SOAP, REST, SQL, JMS, CASTIRON, LDAP and more
Performs Data Transformation to streamline back-end data for mobile consumption
Server and device Security control
Supports Physical Clustering for high availability
Controls Application Deployment and Versioning
Push Notification administration
Analytics including user adoption and usage data
En
terp
rise
Bac
ken
d S
yste
ms
&
Clo
ud
Ser
vice
s
Worklight Server
User authentication and mobile trust
Mashups and servicecomposition
JSON Translation
Adapter Library for backend connectivity
Sta
ts A
gg
reg
atio
nUnified PushNotifications
Client-SideApp Resources
Direct Update
Mobile Web Apps
4
© 2012 IBM Corporation29
Worklight Server- Adapters
UniversalitySupports multiple integration technologies and back-end information systems
Read-only as well as Transactional CapabilitiesAdapters support read-only and transactional access modes to back-end systems
Fast DevelopmentDefined using simple XML syntax, and easily configure with JavaScript API
SecurityUse of flexible authentication facilities to create connections with back-end systemsAdapters offer control over the identity of the connected user
CachingCaching utilized to store retrieved back-end data
TransparencyData retrieved from back-end applications is exposed in a uniform manner regardless of the adapter type
Query
Update
data
Data/Result
as JSON
Invoke
adapter
procedure
SQL SAP
Worklight
SOAP
Response
1
2 3
4
Caching Mechanism
LDAP JMS CAST IRON
REST
© 2012 IBM Corporation30
Cast Iron integration
� IBM Worklight supports connectivity to IBM Cast Iron Hypervisor Edition using a new Cast Iron adapter.
� The adapter provides an API that retrieves data via Cast Iron by simply providing the Cast Iron orchestration name.
� Can be used to integrate Worklight with 150-200 cloud and on premise apps
– SaaS apps: Salesforce.com, Oracle CRM, Taleo.
– Packaged apps: SAP, Oracle PeopleSoft EBS
– Web Services, DBs, flat files/FTP
© 2012 IBM Corporation32
Worklight Runtime - Direct Update – On-device Logic
1. Web resources packaged with app to ensure initial offline availability
2. Web resources transferred to app's cache storage
3. App checks for updates on startup and foreground events
4. Updated web resources downloaded when necessary
Worklight Server
Native Shell
Pre-packaged resources
1 Download
4 Update web resource
App Store
Web resources
Cached resources
2 Transfer
3 Check for updates
© 2012 IBM Corporation33
Unified Push Notifications
Back-end SystemBack-end SystemBack-end SystemBack-end System
Back-end SystemBack-end SystemBack-end SystemBack-end System
Polling Adapters
Message-based Adapters
Unified Push API
Notification State Database
User-Device Database
iOSDispatcher
Android Dispatcher
BlackBerry
Dispatcher
(roadmap)
Windows Phone Dispatcher
SMS Dispatcher
Apple Push Servers (APN)
Google Push Servers (GCM)
RIM Push Servers
Microsoft Push Servers
SMS/MMS BrokersAdministrative Console
Worklight Client-side
Push Services
Worklight Client-side
Push Services
iOS
Push API
Android
Push API
BlackBerry
Push API
Windows
Push API
Broker API
Worklight Client-side
Push Services
Worklight Client-side
Push Services
© 2012 IBM Corporation34
Enhanced Platform capabilities - SMS Web Subscription API
SMS Web Subscription API:� Users can now subscribe/unsubscribe to SMS through an app-provider's website� A REST API is available for subscribing to SMS notifications.
/subscribeSMS?option=unsubscribe&eventSource=<adapter>&phoneNumber=<phonenumber>&username=<username>&appid=<appId>
/subscribeSMS?option=subscribeeventSource=<adapter>&phoneNumber=<phonenumber>&alias=<alias>&username=<username>&appid=<appId>
© 2012 IBM Corporation35
Mobile Data support• On-device, mobile database support
• Embedded JSON mobile database• JavaScript APIs to store, query and update the data in offline mode• Encrypt sensitive data, using a key provided by developer or obtained
as user’s password• Server-to-client Sync: Retrieve, store and keep data store up-to-date
using adapters• Client-to-server Sync: Simplify write actions on data while the app is
offline and send these actions to the server
� Offline available� Reliable� Scalable� Encryptable� Syncable
© 2012 IBM Corporation36
Agenda
1
5
2
Exploring IBM Worklight
Worklight Studio
Worklight Console
3 Worklight Application Center
4 Worklight Server and Runtime Components
© 2012 IBM Corporation37
Worklight ConsoleE
nte
rpri
se B
acke
nd
Sys
tem
s &
C
lou
d S
ervi
ces
Worklight Server
User authentication and mobile trust
Mashups and servicecomposition
JSON Translation
Adapter Library for backend connectivity
Sta
ts A
gg
reg
atio
n
Unified PushNotifications
Client-SideApp Resources
Direct Update
Mobile Web Apps
Feedback Management
Device Runtime
Cross-Platform Compatibility Layer
Encrypted and Syncable Storage
Runtime Skinning
Server Integration Framework
Reporting for Statisticsand Diagnostics
Ap
plic
atio
n C
od
e
Worklight Console
Push /SMS Management
Reporting and Analytics
App VersionManagement
3
4
5
• Application Version Management• Push management• Usage reports and analytics• Reports of custom application events• Configurable audit log• Administrative dashboards for:
• Deployed applications• Installed adapters • Push notifications
• Data export to BI enterprise systems
© 2012 IBM Corporation38
Worklight Console - Application Versioning
Supports multiple versions on the same platform
Device specific versions are uncoupled
© 2012 IBM Corporation40
Extended out-of-the-box reports
IBM Worklight reports tracking adoption and use of mobile apps and devices. These reports are accessible over Eclipse using the BIRT plug-in.� Daily visits per app� Daily hits per app� Total visits per app� New detected devices per app� Total unique devices – per server (cluster)
These BIRT reports are customizable and extensible. The data-warehouse supporting these new reports is also documented, such that any standard reporting or Business Intelligence tool can be used to create additional, custom reports per the needs of the organization.
© 2012 IBM Corporation41
Reports – Extensibility The structure of the database supporting these new reports is also documented, so any standard reporting or BI tool can be used to create additional custom reports.
Example: IBM Cognos dashboard showing these reports
© 2012 IBM Corporation42
Integration with complementary offers
Integrate Tealeaf CX with IBM WorklightExisting Tealeaf CX Mobile customers can integrate Tealeaf CX Mobile iOS and Android SDK into an IBM® Worklight® mobile application enabling IBM Worklight app with insightful data collection and analytics
Unique benefits of using Tealeaf CX
Log of all mobile web and app events
Fine grained behavioral analysis
In field & in app analytics
Session level search
App crashes –before and after
All network HTTP Traffic
© 2012 IBM Corporation45
Enforcing security updates
Remote disable
Direct update
Providing robust authentication and
authorization
Authentication
integration framework
Data protection
realms
Coupling device id
with user id
Streamlining Corporate security
processes
Mobile platform as
a trust factor
Application Security
Code obfuscation
SSL with server identity
verification
Proven platform security
Security Features Mapping
Jailbreak and
malware detection
App authenticity
testing
Protecting data on the device
Encrypted cache / DB
Offline authentication
Secure challenge-
response on startup