ibm mobilefirst - cross platform mobile development – from design to production
DESCRIPTION
Presented at the Israel Mobile Summit 2013 http://www.israelmobilesummit.comTRANSCRIPT
© 2013 IBM Corporation
Cross Platform Mobile Development – From Design To Production
Beery Holstein Product Management Team IBM Worklight [email protected]
© 2013 IBM Corporation 2
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From Design to Production
© 2013 IBM Corporation 3
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From Design to Production
© 2013 IBM Corporation 4
Industry Solutions
IBM & Partner Applications
Banking! Insurance! Transport! Telecom! Government!Retail! Healthcare! Automotive!
Application & Data Platform
Stra
tegy
& D
esig
n Se
rvic
es
Cloud & Managed Services
Devices! Network! Servers!
Developm
ent & Integration
Services
Management Analytics Security
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may
IBM MobileFirst Portfolio
© 2013 IBM Corporation 5
IBM Global Technology Unit – The Partnership Model
Assessment
IBM Technology
Business Development
Go To Market
World Wide Market
Ecosystem Technology
Business Development
© 2013 IBM Corporation 6
Industry Solutions
IBM & Partner Applications
Banking! Insurance! Transport! Telecom! Government!Retail! Healthcare! Automotive!
Application & Data Platform
Stra
tegy
& D
esig
n Se
rvic
es
Cloud & Managed Services
Devices! Network! Servers!
Developm
ent & Integration
Services
Management Analytics Security
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may
Offering Portfolio
© 2013 IBM Corporation 7
IBM Worklight: A mobile application platform Speeding the development, integration and management of mobile applications and infrastructure
IBM Worklight goes beyond mobile app UI creation to deliver mobile optimized, standards-based, middleware and tools for enterprise-grade mobile applications and services creation
Accelerate Development • Web, hybrid, and native development: open,
flexible, standard-based, multi-screen/omni-channel
• Functional testing • Development lifecycle tools and integration
Facilitate App Security and Trust • Server-enforced authentication • App authenticity and user-app-device binding • Secure and syncable on-device storage • App version enforcement
Enable User Engagement • Unified push and SMS notifications • Geolocation and context collections and
intelligence • Mobile-friendly integration
Support Mobile Analytics • Efficient acquisition of analytics data • Development, operational, and business
analytics • Offline and online event management integration
© 2013 IBM Corporation 8
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From Design to Production
© 2013 IBM Corporation 9
Multiple Mobile Application Development Models
© 2013 IBM Corporation 10
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From Design to Production
© 2013 IBM Corporation 11
Worklight Studio Eclipse Based IDE
§ Native, hybrid and standard web development § Environment-specific optimization § Native development options § Runtime skins § 3rd-party library integration
§ Device SDK integration § Access to emulators and debugging tools § Supports auto-complete and validation
HTML5, Hybrid, and Native Coding Optimization Framework
Integrated Device SDKs
3rd Party Library Integration
Bui
ld E
ngin
e
Worklight Studio SDKs
Functional Testing
WYSIWG Editor and Simulator
Blackberry
Android
iOS
Windows Phone
Java ME
Windows 8
Mobile Web
Desktop Web
1
© 2013 IBM Corporation 12
WYSIWYG UI Construction via Rich Page Editor
§ Eclipse perspective for Worklight projects.
§ Optimized layout for hybrid app development
§ Supporting JQuery Mobile and dojox.mobile with a Visual UI Editor
§ Rich page editor: drag-and-drop, palette of components, properties view, beautified outline, and raw editable source code
§ Changes to code automatically apparent in rich page editor, and vice-versa, for quick development
© 2013 IBM Corporation 13
Reuse code …. and Optimize per Environment
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
© 2013 IBM Corporation 14
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 by app at runtime
Developer-controlled JavaScript file run at app startup determines which skin to load
© 2013 IBM Corporation 15
Quickly Test through Preview in Browser Perform device-specific tests in the Mobile Browser Simulator: supports Cordova and Worklight client API
© 2013 IBM Corporation 16
User Engagement: Unified Push Notifications
• Uniform access to push notifications providers ‒ Register for, Notify and Receive a notification
• Register for and Send SMS based notifications ‒ E.g., for Java ME
Back-end System Back-end System
Back-end System Back-end System
Polling Adapters
Message-based Adapters
Unified Push API
Notification State Database
User-Device Database
iOS Dispatcher
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 Brokers
Administrative Console
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
Worklight Client-side Push Services
© 2013 IBM Corporation 17
User Engagement: Geo-Location Sense and Response
§ Client-side APIs - Efficiently sampling GPS, cell triangulation,
and Wifi coordinates - Sampling while app in the foreground and in
the background - Batch collected data and send to server - Available also when app is offline - Developer in full control
§ Events based on - Proximity to point of interest - Entering, leaving a geo-fence
§ Server side – maintain an evolving context that is available for all adapter procedures - React to important geo events - Enrich with business data - Integrate context information with business
processes - Storage for analytics purposes
Worklight Server
Collect, compress and stream important information
Analytics Repository
Location Data
Ada
pter
Ada
pter
Feed location data and triggers to business processes decision management systems etc.
© 2013 IBM Corporation 18
Mobile Functional Test Tools
§ Create, run, and automate tests on mobile applications § Improve quality and time-to-value with industry-first app
testing - Create resilient and code-less test cases - Record once, play back on multiple devices
§ Standardized, eclipse based § Comprehensive – Android and iOS, Native and hybrid § Complete – Recording, editing, and running on mobile
devices § Resilient – Same test runs
across multiple devices § Also for non-developers –
Scripts in natural language description
© 2013 IBM Corporation 19
Application Center – Share with Testers and with Enterprise Users
© 2013 IBM Corporation 20
Unified Client and Server Analytics
§ Device and app properties § Exceptions, logs, response
time § Geo data § Raw analytics data
© 2013 IBM Corporation 21
IBM Worklight: A Mobile Application Platform Feedback Management
Reporting for Statistics and Diagnostics
Public App Stores
Worklight Application Center
Development Team Provisioning
App Feedback Management
Enterprise App Provisioning and Governance
2Device Runtime
Cross-Platform
Compatibility Layer
Encrypted and Syncable Storage
Runtime Skins
Server Integration Framework
App
licat
ion
Cod
e
3
Worklight Console
5
Unified Push and SMS Notification
Development and Operational Analytics
App Version Management
Ente
rpris
e B
acke
nd S
yste
ms
&
Clo
ud S
ervi
ces
Worklight Server
User Authentication and Mobile Trust
Mashups and Service Composition
JSON Translation
Adapter Library for Backend Connectivity
Stat
s an
d Lo
gs A
ggre
gatio
n
Unified Push Notifications
Client-Side App Resources
Direct Update
Mobile Web Apps
4
Geolocation Services
HTML5, Hybrid, and Native Coding Optimization Framework
Integrated Device SDKs
3rd Party Library Integration
Bui
ld E
ngin
e
Worklight Studio SDKs
Functional Testing
WYSIWG Editor and Simulator
Blackberry
Android
iOS
Windows Phone
Java ME
Windows 8
Mobile Web
Desktop Web
1
Enhanced crash & platform-level exception capture
Location-based event handling
© 2013 IBM Corporation 22
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From design to Production
© 2013 IBM Corporation 23
Agenda
1
5
2
IBM MobileFirst
Mobile application is more than an app
Q&A ….
3 To Hybrid or to Native?
4 From Design to Production
© 2013 IBM Corporation 24
© 2013 IBM Corporation 25
Legal Disclaimer
• © IBM Corporation 2013. 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). 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.