Main menu

MobiCloud - Cloud Mobile Hybrid Application Generation

Umbrella : Cloud Computing

Resources

Publications

Primary Reference

  • Ajith Ranabahu, Michael Maximilien, Amit Sheth and Krishnaprasad Thirunarayan. A Domain Specific Language for Enterprise Grade Cloud-Mobile Hybrid Applications, DSM 2011 - The 11th Workshop on Domain-Specific Modeling, October 23-24 2011 (Online Resource)

    This is the latest paper on MobiCloud that covers the new Web UI and the extension features.

Other References

  • Ashwin Manjunatha, Ajith Ranabahu, Amit Sheth and Krishnaprasad Thirunarayan, 'Power of Clouds In Your Pocket: An Efficient Approach for Cloud Mobile Hybrid Application Development,' 2nd IEEE International Conference on Cloud Computing Technology and Science, Indianapolis, Indiana, November 30 - December 3 2010.(Online Resource)

    Older paper on the MobiCloud base language that has an in-depth coverage of the base language.

  • Ajith Ranabahu, Amit Sheth, Ashwin Manjunatha, and Krishnaprasad Thirunarayan, 'Towards Cloud Mobile Hybrid Application Generation using Semantically Enriched Domain Specific Languages', International Workshop on Mobile Computing and Clouds (MobiCloud 2010), Santa Clara, CA,October 28, 2010(Online Resource)

    A position paper on MobiCloud, before it was well realized.

Archived Resources


Overview

Lately there have been interesting changes at both ends of the spectrum of computing power. On one end there has been a boom in mobile computing devices, fueled by fast growing communication networks. On the other end, there has been substantial growth in high-end data centers that offer cheap, on-demand and virtually unlimited computing resources, popularly named Cloud computing. In the backdrop of these advances in computing and the growth of data intensive domains such as social networks, a new class of applications has emerged taking advantage of not only on-demand scalability of computing clouds but also the sophistication of current mobile computing devices. This class of applications, named cloud-mobile hybrids, are characterized by the need for heavy computations on the back-end but only simple user interfaces on the front-end. An example of this class of applications is an implementation of the Privacy Score algorithm. Privacy score is a numerical indicator of the level of private details exposed by an individual in a social network. This score is a relative measure and requires substantial computations that can be done in parallel. Presenting the score to the user however requires only a simple UI that may be implemented on a mobile device. With the popularity of social networks and micro-blogging services, a vast amount of data is being collected everyday that provides a plethora of opportunities to implement similar types of data and compute intensive applications.

Figure 1 : Cloud Mobile Hybrid Applications

Harnessing the power of this new computing landscape however, is still a challenge. This challenge needs to be
overcome on three fronts:
  1. The multitude of existing Clouds offer different paradigms, programming environments and persistence storage. The heterogeneity present in the core Cloud services effectively locks the developers to a particular vendor.
  2. The heterogeneity in the mobile application platforms stem from different development environments, Application Programming Interfaces (API) and programming languages. Fragmentation of APIs even within a single platform forces mobile application developers to focus on only specific platforms and versions. The current practice in the industry is to concentrate the development efforts on selected mobile platforms, leaving out a significant portion of various devices and platforms.
  3. There is difficulty in managing the communication interfaces. The front-end and back-end separation that requires Remote Procedure Calls (RPC) makes the whole development process tedious, even with an arsenal of sophisticated tools at a developer's disposal. The separation of the front-end and the back-end is also a source of version conflicts with Clients and Services where the service API has to be maintained at the level of the least capable client. Introducing changes to the service API would break the existing clients requiring frequent updates, a common problem faced by many of the mobile application vendors.

The objective of this research is to provide one approach to address the first two of the above mentioned challenges and partially address the third challenge. The MobiCloud solution is centered around a Domain Specific Language (DSL) based platform agnostic application development paradigm for cloud-mobile hybrid applications. We demonstrate how applications described using a single DSL script can significantly reduce complexity. At the time of deployment, a generator compiles the DSL script into the native format of the targeted platform. The client server interfaces are automatically generated, relieving the developers from the minute details of the communication interfaces. By taking this approach, the developers are shielded from the heterogeneities of each of the platforms as well as lengthy debug cycles of client-server communication. The current MobiCloud compiler/generator is capable of generating code for four target platforms and our evaluations indicate significant reduction of effort in creating a simple but functional Cloud-mobile hybrid application.