2. Christina Møller Olesen, 18 september 2012
Udvikling af apps til mobile enheder
med IBM Worklight
3. Mobile is Complex. And the Complexity is Below the Glass
Enterprise Business Model Changes
• New business opportunities based upon geolocation 30%
• Anytime, anywhere business transactions Project Effort
• Importance of social business interactions
App Development Lifecycle Complexity
• Complexity of multiple device platforms with fragmented Web,
native, and hybrid model landscape
• Connecting the enterprise back-end services in a secure and scalable
manner Authentication Securit
• Unique mobile requirements (user interface, Database
Customer
y
Scenarios
connected/disconnected use, version upgrades, etc.) Access
External Systems
Customer Profiles
and data Device
detection
Complex systems Web Performance /
Mobile Security and Management integration Services Load
• Protection of privacy and confidential information 70% Project Effort
• Use of client-owned smartphones and tablets
• Visibility, Security & Management of mobile platform requirements
4. 4
Comprehensive solution for mobile delivery
IBM Mobile Foundation V5.0
A comprehensive suite of mobile products that provides
the essential elements needed for mobile development,
deployment, and management.
Mobile Foundation elements:
IBM Worklight
Mobile application development and delivery End to end solution for
IBM WebSphere Cast Iron Hypervisor Edition mobile development,
Advanced connectivity to cloud and back-end systems device management, and
IBM Endpoint Manager for Mobile Devices connectivity
Complete end-to-end Mobile Device Management
5. IBM Worklight - vision
Provide the world’s most advanced and open platform for enterprises to develop, secure, run
and manage HTML5, hybrid and native apps
Mobile-optimized middleware to support app deployment
Standards-based platform with hybrid coding functionality
Leveraging growing ecosystem of 3rd-party tools and frameworks
Enabling self-sufficiency through simplicity and training resources
Advanced mobile-specific security mechanisms
Supporting complex mobile initiatives
6. Components of IBM Worklight
Worklight Studio
The most complete, extensible development environment with
maximum code reuse and per-device optimization
Worklight Server
Mobile middleware offering unified push notifications, version
management, security and integration
Worklight Runtime Components
Extensive libraries and client APIs that expose and interface with
←
native device functionality and the Worklight Server
Worklight Console
A web-based console for real-time analytics and control of your
mobile apps and infrastructure
7. Application Types
Optimized cross-platform codebase with HTML5 as core technology
Web Apps Hybrid Apps - Web Hybrid Apps - Mixed Native Apps
Written in HTML5 Source code consists of User augments web code Platform-specific.
JavaScript and CSS3. web code and included with native language for Requires unique
Quick and cheap to Worklight libraries and unique needs and expertise, pricey and long
develop, but less executed in a native shell. maximized user to develop. Can deliver
powerful than native. experience. higher user experience.
Device APIs Device APIs
Mobile Browser Worklight Runtime 1011001110
111110010110111101000
Web 000111101010011101010
Web Code
<!DOCTYPE html PUBLIC
</html>
</body> <!
Native100101
010101010100011110101
<html> </head> DOCTY 010101 101010101010100100101
<! - - created 2003-12- <head><title>XYZ</title PE html 110100 101010101011111100000
12 - - <! - - created 2003-12-1 PUBLIC 101010 101010101001010101010
<head><title>XYZ</title <html> created 101010 111001001100101010100
> <!DOCTYPE html PUBLIC 2003- 100100
12 100101
Web Code 010101010100100100101
</head>
<body> </p> 111001 001001010111010010011
</p> </body 001100 100101010101110100101
</body> Worklight Runtime > 10
</html> </html
Native Application
>
Device APIs
8. Apps Development using Worklight Studio
• Eclipse-based IDE
• Integrate with Rational Application Developer
• Combining native and standard web technologies in
one multiplatform app
• Environment-specific optimization
• 3rd-party libraries integration
• Device SDK integration
• Back-end connectivity utilities
12. Preview in browser
Perform device specific tests in the Mobile Browser Simulator: supports PhoneGap and Worklight client API
13. Mobile Application Center
A cross platform private mobile application store similar to
public app stores but focused on the needs of an
organization or a team
Ease highly iterative development process and distribution
of mobile applications
Key capabilities:
Delivers distribution and management of mobile applications
within a company / teams
Easy distribution of iOS and Android apps within a team
App store supporting iterative
Supports any mobile applications development lifecycle to improve
Provides versioning and updates collaboration with application
Centralizes rating and feedback information stakeholders, QA and Development
teams
Controls who can modify or install an application
Cross platform, technology
Easy to install and simple to run
agnostic mobile application store
14. Worklight Server
• Distribution of mobile web apps
• Enterprise connectivity:
• Secure client/server connectivity
• 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
16. Worklight Console
• 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
17. Centralized admin interface
Centralized control of all installed applications and adapters
Remotely disable apps by device and version
Customize user message
19. Worklight - Summary
Application Development
Standards-based technologies
Seamless integration with 3rd-party tools
Optimized cross-platform codebase with HTML5 as core technology
Industrialization of mobile development
Backend Integration
Mobile-optimized middleware
Support existing security and authentication mechanisms
Unified push notifications framework
Control and Management
Centralized admin interface
Version control
Access management
Data collection and reporting
While the opportunities mobile presents are significant and mobile has become an enterprise requirement, there are a number of challenges clients face: First, at a business level, the basic models are changing in the way the business interacts and transacts with customers, employees and partners. Full business transactions need to be enabled with low latency request/response characteristics 24x7 from anywhere in the world at anytime. Knowledge of location can be important and utilized as part of the interaction. Social business interactions add opportunities and complexity to the space. Second, as we mentioned earlier the app development lifecycle is more complicated. In addition to being faster and more iterative, you have to deal with multiple device platforms and development styles. You have to securely integrate into back-end enterprise services and cloud and be ready to scale appropriately – even when demand occurs in less predictable patterns. On top of all that you have unique mobile requirements like a user interface that has significant restrictions in terms of real-estate. Third, you need to figure out how to protect your confidential information and the privacy of the participants – all while you are enabling connection through devices owned privately by the participants themselves and not controlled by the enterprise. You also have to figure out how to manage all the elements effectively from the device to the back-end platform. These are real challenges. Our recent Tech Report indicated the top three mobile adoption concerns: security/privacy, cost of development, integrating with cloud.
IBM Mobile Foundation delivers a range of app development and management capabilities that support a wide variety of mobile devices and mobile app types, while leveraging existing web technologies skills and investments. The IBM Mobile Foundation family of products includes: IBM Worklight: to build, run and manage cross-platform mobile apps WebSphere CastIron: to connect mobile apps to a variety of Cloud and back-end systems IBM Endpoint Manager: to control and manage end-user mobile devices
The Worklight mobile platform consists of four main components: The Worklight Studio – the platform’s IDE The Worklight Server – a secure gateway between apps, back-end systems and cloud services Worklight’s Device Runtime Components – complementing the Server with client side functions The Worklight Console – a web-based administration interface.
The Worklight Studio is an Eclipse-based Integrated Development Environment (IDE) that allows developers to perform all the coding and integration tasks that are required to develop rich employee- and customer-facing applications. The Studio augments the familiar tools of Eclipse with a wide variety of enterprise-grade features that are delivered by the Worklight Plug-in, enabling it to streamline application development and facilitate enterprise connectivity. Worklight’s Java-based Server is a secure and scalable gateway between apps, external services, and the Enterprise. The Server facilitates secure connectivity, data manipulation, authentication, analytics and operational management functions. The Worklight Console is a web-based user interface dedicated for the ongoing administration of the Worklight Server and its deployed apps, adapters and push notification services. Worklight provides client-side run-time code that services HTML5, hybrid, or native application. Access back-end data and transactions : API for the invocation of Worklight services, retrieval of data and execution of transactions against back-end systems. Authentication and security : API and code for managing the authentication sequence and securing the application data and its link to the Worklight Server. Application Management : API and code for applying new application versions disabling applications according to policies defined in the Worklight Console. Troubleshooting : Code for detecting run-time connectivity problems in the app and collecting troubleshooting info about the app and the device Usage reporting for audit and analytics : API for collecting built-in and custom data from applications, to be recorded by the Worklight Server for audit and analytics purposes. Cross-platform compatibility APIs : Uniform API for device features and useful user interface tasks, hiding the differences across different environments. Application of skins: Allowing developers to adjust the look and feel of the app to the device's form factor in run-time, thus optimizing it for different versions of the same device family. The run-time client environment consists of the following components: JavaScript libraries : A set of JavaScript libraries implementing the JavaScript APIs. These libraries are available in all run-time environments (with the exception of native iPhone and Android apps which are written in Objective-C and Java respectively and do not require JavaScript libraries). Native libraries for hybrid apps : A set of native libraries (for iOS and Android) that provide access to device-specific features. Apps written in JavaScript do not access these libraries directly, but through the relevant JavaScript APIs. In some cases, native code runs the web code provided by the developer. Native libraries for native apps : A set of native libraries for iOS and Android that provide access to Worklight Server functionality for natively written applications. Native code templates : For iOS, Android, BlackBerry, and Windows Phone devices, native code templates encapsulating a browser that runs the web code provided by the developer.