Architektur

Mobile Cloud Service – what you should know

esentri AG
esentri AG

Until this week nobody had the possibility to get trained in the new Oracle Mobile Cloud Service (MCS). So we were excited to join the Oracle Fusion Middleware Summer Camp (#ofmSummerCamps) 2015 and participate in the first MCS training held by Grant RonaldFrank Nimphius and Jürgen Menge.

What is this new product and why do we need it?

Mobile Cloud Service manages endpoints to all backend services and brings data to mobile clients. Sounds similar to a Service Bus but it is more than that as it also provides additional features in the area of monitoring, security and dedicated mobile storage. In addition, you can manage your APIs and connections to your mobile applications.


MCS Overview

In the overview you can see how MCS components are related to each other. The core component is the Mobile Backend as it integrates all other components. Within you define the Applications and their REST services, dedicated application storage for pictures, video or documents and notifications for push messages, which are automatically send by the dedicated Apple (APN) and Google (GCM) messaging services.

Mobile Backend Configuration

When developing a new mobile application using MCS first of all the Mobile Backend should be defined. Each Mobile Backend has one or more APIs to call. It is possible to use a wizard to define an API or alternatively to import an API defined by a RAML.

API Designer in MCS

On the point “Implementations” you have to wire your API with functionality. The preferred way in MCS is to use REST interfaces with JSON payload, the integration is done in JavaScript. You generate a scaffold for the code, edit to the requirements you need and upload it again. The scaffold is generated out of your API design.

For the connection you need the right Connectors that point to the Endpoints of your Services, which could be REST/JSON or SOAP/XML.

With these few steps it’s possible to publish existing services to a mobile application. For the integration in the mobile app Oracle provide SDKs for iOS, Android, Xamarin and MAF. These Libraries not only take care of establishing connections to backend services, they also handle offline caching, authentication and notification management.

Summary

Altogether my opinion of Mobile Cloud Service is positive as it has a reasonable feature set to build a mobile application backend. As many web applications use REST/JSON to wrap their request another use case for MCS could be to act as general Backend as a Service for different kind of applications such as standard web clients. An improvement definitely required is to include a sophisticated build-in JavaScript editor with debugging capabilities. Currently, there is no error detection on the cloud side for the code. Therefore, it is only possible to download the source code and debug it in a third party JavaScript editor.

Further Reading

https://cloud.oracle.com/mobile
https://www.youtube.com/user/OracleMobilePlatform
https://docs.oracle.com/cloud/latest/mobilecs_gs