IBM Worklight V5 provides an open, comprehensive, advanced platform for developing mobile enterprise applications for smartphones and tablets. As a complete, open standards-based platform that leverages technologies such as HTML5, CSS3, and Apache Cordova, Worklight helps organizations of all sizes efficiently develop, connect, run, and manage HTML5, hybrid, and native mobile applications.
Worklight supports all stages of the mobile development lifecycle, including application building, deployment, execution, and management, and provides tools to help at each step along the way.
Leveraging standards-based technologies and tools, Worklight ships with a comprehensive development environment, mobile-optimized middleware, and an integrated management and analytics console, supported by a variety of security mechanisms. Worklight enables the creation of rich, cross-platform applications without the use of code translation, proprietary interpreters, or unpopular scripting languages. It also reduces time to market, development cost, and overall complexity, enabling you to provide a better user experience across a broad array of mobile devices.
With Worklight, you can efficiently manage the development and maintenance of multiple, optimized versions of your mobile applications. Mobile apps targeted to different mobile operating systems (such as Android, iOS, and others) can be built in a uniform fashion. Because a large percentage of the common code base is shared across different operating systems, the ability to rely on ready-made components and to share device-independent sections of code drastically reduces development time. Mobile applications delivered through Worklight leverage common web technologies across multiple devices, without sacrificing the ability to tap the power of native technologies and tools, such as Objective-C, xCode, or Android. As such, native code can also be added to applications targeted to specific operating systems, if desired. Features of specific mobile devices can be accessed by your applications using Apache Cordova or native APIs combined with the shared common code base.
This articles presents a high level checklist of some of the latest key features of Worklight to help you become familiar with its capabilities and understand how it can help you launch and support fast and effective mobile application development.
The Worklight platform consists of four main components:
- IBM Worklight Studio is an Eclipse-based integrated development environment (IDE) that enables you to perform all the coding and integration tasks required to develop a fully operational mobile application for various mobile operating systems. Eclipse users will find Worklight Studio easy to use it with little or no additional learning required for develop-ing mobile applications with the assisted code development features.
- IBM Worklight Server is a Java™-based server that is a scalable gateway between applications, external services, and the enterprise back end infrastructure. The server contains security features to enable connectivity, multi-source data extraction and manipulation, authentication, direct update of web and hybrid applications, analytics, and operational management functions. Worklight Server supports IBM WebSphere Application Server and Apache Tomcat run time environments for executing Worklight applications.
- IBM Worklight Device Runtime Components consist of client-side run time code that embeds server functionality within the target environment of deployed applications.
- IBM Worklight Console is a web-based administrative console that supports the ongoing monitoring and administration of the Worklight Server and its deployed applications, adapters, and push notifications. You can also use the console to manage different versions of mobile apps and send any notifications to application users.
Through these components, Worklight provides a broad array of features and capabilities. Among these are:
- Single assisted development environment for building cross platform applications
Worklight Studio provides an environment for developing mobile applications for all the supported mobile platforms. Applications can be developed as mobile web applications, or for specific operating systems including Android, iOS, Black-berry, and Windows. Figure 1 shows a view in the Worklight Studio development environment.
Figure 1. Worklight Studio IDE
- Open approach to third-party integration
Figure 2. Application creation wizard
- Strong authentication framework
Worklight has a built-in authentication framework that you can configure and use with very little effort. Authentication can be form-based, cookie-based, HTTP header-based, or adapter-based. Worklight Studio provides an editor for you to view and edit the authentication configuration for any application. Worklight also provides the option for you to create a custom authentication framework. Figure 3 shows the Authentication Configuration Editor in Worklight Studio.
Figure 3. Authentication Configuration Editor
- Share common code base across operating systems
A common code base shared across all supported mobile operating systems is a key capability of Worklight, When you create an application in Worklight, it cre-ates a default application code base location with a folder called common. Most of the application code required for common cross-platform functionality can be coded and tested using this common code base. Once the common functionality is completed, the platform-specific requirements for the application can then be added under the platform-specific code base. This helps you achieve maximum reuse of common code, and avoid redundant coding when developing applications that are even targeted for multiple operating systems. Worklight makes managing and supporting code easy and convenient. Figure 4 shows the Worklight applica-tion file structure in which the application code in the common folder can be shared across applications for all platform environments.
Figure 4. Worklight application structure
- Enterprise back end connectivity
Worklight adapters enable the integration of back end systems with applications developed with Worklight. Out of the box adapters are available for connecting to enterprise back end systems using database, web services, or Cast Iron. Adapters can also be created easily in Worklight Studio. Three types of adapters can be created:
- SQL adapter
- HTTP adapter
- Cast Iron adapter.
Worklight Studio also offers the option of testing adapter functionality before they are used by client applications. Figure 5 shows the adapter creation wizard in Worklight Studio, which enables you to easily connect mobile applications to en-terprise back ends and reuse existing services.
Figure 5. Adapter creation wizard
- Administration console to manage all applications
Worklight provides a browser-based management console that you can use to de-ploy, manage, and otherwise administer all applications and adapters through a single interface. The admin console is used for managing applications for all the supported mobile operating systems. You can also manage multiple application versions with the admin console, along with push notification configurations and active user reports. Figure 6 shows the Worklight console application manage-ment view.
Figure 6. Worklight Console
- Unified push notifications
Push notification is a mechanism that can send notifications to devices where Worklight applications are installed. Push notifications can be configured to send notifications to devices regardless of whether applications are running on devices in the foreground or not. Configurations can be setup to send the notifications to devices using Android C2DM or Apple APNS for devices using Android or iOS, respectively. Worklight enables you to send notifications to all devices, a subset of devices, or to a single device.
- Encrypted offline availability
Worklight provides the ability to encrypt data that needs to be stored as such on the device. Worklight’s API framework detects application connectivity status so that the application can take appropriate action if offline. Worklight’s encrypted cache mechanism can be then used to store sensitive data in encrypted format on devices. This enables you to address data security requirements for information that needs to be stored on devices. Offline application availability and offline au-thentication is possible with these embedded features. This feature addresses requirements for building secure mobile apps with consideration for network availability.
- Direct updates and remote disablement
Once Worklight applications are installed on devices, application updates can be applied directly if there is a change in an application that is deployed on Work-light Server. This feature is known as direct update. When a Worklight applica-tion starts on foreground on the device, it checks for updates from Worklight Server. If updates are available, Worklight Server pushes the application updates to the device so that it is running the latest version of the application. This feature saves much time and effort usually spent releasing updated versions to applica-tions to devices. The Worklight Console also provides an option to disable any application in case usage of that application needs to suspended for some reason. When disabling, notifications related to availability can also be pushed to applica-tion users to keep them aware of the current availability status. Figure 7 shows how an application can be disabled remotely, along with a notification message and download link being sent to users. This features addresses requirements for sending modified features or fixes to applications.
Figure 7. Application management view of Worklight Console
- Application security
Worklight provides multiple features supporting application security. Authenticity of any application connecting to Worklight Server can be configured so that ap-plications that are modified post distribution are prevented access from Worklight Server. This feature can be configured using the testAppAuthenticity property in the application descriptor configuration of any application. This feature secures the Worklight application in case it is redistributed with changes that might not be authentic. Code obfuscation is possible to prevent the redistribution of applica-tions with unauthorized modifications. Figure 8 shows a snapshot of a Worklight application configuration file with a security configuration option.
Figure 8. Worklight configuration file snapshot for application security
- Data collection for analytics
Worklight provides features to collect data for analytics. Data can be collected at both the server level and device level. The data collected can be configured to get the analytics data for various requirements using different reporting tools. Work-light’s reporting capability can help you find active users from the admin console. Basic analytics reports, such as the application-specific reports based on new downloads, application access patterns, daily visits, and daily hits can be config-ured using the Business Intelligence Reporting Tool (BIRT) Eclipse plug-ins. The analytics data can then be exported to enterprise report systems. This feature addresses enterprise wide analysis and reporting requirements. Figure 9 shows the Active User Report view in Worklight Console depicting the users logged in for last 30 days.
Figure 9. Worklight Console Active User Report
This article provided a high level checklist of some of the key features and capabilities of IBM Worklight. Use the Resources below to decide where you’d like to learn more about Worklight so you can begin to apply the advantages Worklight provides to enhance your competitive edge in mobile enterprise applications.
Worklight user documentation
Worklight features and benefits
IBM developerWorks WebSphere
Get products and technologies
Harish Shenoy is an IBM Certified SOA Solution Designer. He is currently working in BPTSE team IBM India Software Lab providing technical solution architecture in Application Connectivity and Application Infrastructure. His expertise includes IBM Worklight, WebSphere Application Server, WebSphere eXtreme Scale, WebSphere Process Server, WebSphere Message Broker and BPM. He is also certified in WebSphere Process Server, WMQ,WebSphere Message Broker and WebSphere Application Server.