Last week I attended the Oracle Mobile Cloud Service (MCS) track as part of the Oracle Summer Camps in Lisbon. Besides the great location and networking opportunities, it’s was a great learning experience. It turned out it not only was the first MCS training for me, it even was the first MCS training ever given! I feel a lucky bastard to be one of the first people worldwide, besides Oracle employees, to work with the MCS.
Real lucky, because I’m not a mobile developer, I’m an integration specialist. The reason to do this course is because I got interested after a presentation of MCS at AMIS by Steven Davelaar from Oracle. The other reason is that the mobile developer who was supposed to go, was not able to go, so I replaced him. So that’s double luck!
It’s even tripled luck because it turned out that MCS is more about integrating (exposing) your business to mobile apps! Because I’m an integration specialist this really attracts me. And from a consultant perspective this also attracts me because creating a mobile backend in the cloud is an attractive business case for our customers.
Let’s first start with the advantages for the business. There are multiple reasons why MCS is attractive for a company with mobile ambitions. The first one is the separation of the mobile connections (network) from the existing network. In the first place this is a security advantage. With the Oracle Mobile Cloud in the middle, no mobile devices direct contact with your own infrastructure. It’s easier because only the MCS connects to your network instead of (lots of) mobile devices. Also MCS acts as a buffer protecting against all kind of attacks, including DDOS attacks.
The separation also means that, to be able to connect with lots of mobile devices, no extra investments have to be made in infrastructure and middleware products (e.g. application server with service bus to register mobile connections, serve requests, etc).
Last, but not least, it’s a fast way to expose business functionality to mobile devices resulting in a short time-to-market.
From an integration specialist perspective the separation is also useful and results into a fast way of realizing a mobile REST interface. The reason is that when the business requirements of the mobile app are known, the interface can very easily be created in the UI of the Oracle Mobile Cloud Service. This UI for development and design is a simple web application, so only a browser is needed. The mobile interface, known in MCS as the mobile back end, can be created by uploading a RAML document or by specifying it within the UI of MCS. A RAML is a technical description of the mobile interface defining methods including input and output data. (For those who are familiar with a WADL, it’s about the same, it’s just another ‘flavor’.) When specifying the interface in the MCS UI, a RAML document is generated in the background and you can even toggle between them. Finally hardcoded mock data can be entered for each method or might even be already there (read from the RAML document). Because the mobile developer knows what he needs to implement in order to meet the business requirements, the creation of the interface can be done by the mobile developer himself! Remember, he only needs a web browser (and access to the MCS) to do this. When he has defined the interface in MCS, the mobile backend already works! This means the mobile developer can start developing his mobile app using the mobile backend he just has created. Of course, the mobile backend will initially return mock data as long there is no real implementation. The mock data can easily be changed by himself in the MCS UI when he wants to develop or test with different data.
While the mobile developer continues realizing the mobile app(s), the backend developer can create a real implementation for the mobile back end. He can glue this back end to multiple SOAP and/or REST web services or even custom (node.js) code. These services can be enterprise services, which can be secured by applying policies, but also other available web services on the internet (weather service, Google services, etc). To meet security requirements he can apply authorization by defining users, roles and use them to restrict access and usage of service methods.
To summarize, the Oracle Mobile Cloud Service really is useful for the business and simplifies development of mobile applications.
In a next blog I will deep dive into the development details of Oracle MCS including screen shots and how to connect your mobile back end to an implementation using node.js.
Oracle Mobile Cloud Service – https://cloud.oracle.com/mobile
RAML – http://raml.org/
Today, August 28, MCS has become available, see http://weblogiccommunity.com/2015/08/28/oracle-mobile-cloud-service-is-available/