Inside Data 70
by Graham Keitch
Oracle Mobile Cloud Service can help you integrate mobile devices into your business systems, as Graham Keitch reports.
HardCopy Issue: 70 | Published: November 4, 2016
The ability to interact with departmental systems on the move has become a prerequisite for many businesses seeking competitive advantage. Most systems modernisation projects today are either completely or partially driven by mobile requirements. Mobile devices generally act as thin-clients in an n-tier environment on account of screen size, other hardware limitations and the constraints of being on the move. Their main task is to host the presentation layer which handles the input and output screens, and other GUI features. They rely on backend servers to execute most of the business logic, data handling, BI, geospatial and other distributed services for which the cloud is an ideal platform.
A mature and flexible set of cloud backend services for mobile applications needs to address the development and operational challenges faced by today’s IT departments. In most cases, the application needs to mimic the desktop variant to provide a consistent user experience. Developing code for more than one platform has been a problem since the earliest days of mobile computing. Mobile also raises issues around connectivity, synchronisation and security. Oracle Mobile Cloud Service acts as an abstraction layer that solves these issues through a set of backend services.
Systems in general are becoming more granular and distributed across multiple platforms driven by the increasing use of application programming interfaces (APIs). These have been around for decades but have recently become the de facto standard that helps remove the need to code for a variety of target devices. By leveraging a catalogue of mobile REST/JSON APIs, developers need concern themselves less about handling data storage and retrieval. Authentication and security can also be implemented more easily.
Oracle Mobile Cloud Service exposes APIs that can be called directly from client applications using REST calls or client SDKs. In addition to out-of-the-box services, you can create new APIs which can be called from the mobile client application via standardised REST calls. This helps maintain a uniform and more easily maintained development environment. The customised APIs are implemented with Node.js which opens up the possibility of extending them with open source modules.
The platform provides a variety of other services, too. Data can be stored in a ‘collection’ which allows it to be moved back into the database server where it belongs while remaining accessible to the client. Other data related services include two-way synchronisation with conflict detection and resolution rules that can be customised. Push Notifications allow you to communicate event changes to the client and Location Services provide contextual location information.
Server-side authentication using the security credentials of users and client applications helps achieve built in end-to-end security. A number of methods are available to define roles and realms, and to configure role based access to API endpoints with the backend. Mobile users can also login using their enterprise credentials or via social networks. Analytics Service can yield valuable insight into adoption rates, features used and other metrics which help ISVs and other developers understand how and when customers are using an application.
Tools are also provided for a class of developers which Oracle refers to as ‘citizen developers’, allowing them to create on-device mobile solutions without writing code. This is the Mobile Application Accelerator (MAX), a browser-based tool which allows you to edit, test and publish mobile applications from a browser console. You can use the console to preview the application with live data without having to use device simulators. Scanning the Quick Response (QR) code from your mobile device triggers the application download process.
The completeness of the Oracle stack for cloud, on-premises and hybrid environments opens up opportunities for developers to extend and enhance their mobile solutions. Oracle Mobile Cloud Service is tightly integrated with other Oracle Cloud offerings such as Document Cloud Storage, IoT Cloud Service and Process Cloud Service to name but a few that are self-explanatory. Mobile solutions can also be developed to extend Oracle Applications.
Subscriptions to Oracle Mobile Cloud Service are based on the number of API calls made and the amount of storage used. Oracle provides the development portal and runtime environment and most customers subscribe separately to a development, staging and production environment for greater control and flexibility.