Friday, March 22, 2013

Cloudifying Mobile applications through Windows Azure Mobile Services


Its been fairly long since I blogged, hoping to catch back into the momentum. In the past couple of years I've been involving myself more into solution engineering predominantly for cloud, mobile, SOA platforms.

"Cloud" and "Mobility" are the buzz words today. Most of the "Web" app customers of yester years have been wanting to move to cloud, and also enable mobile access of their applications. The primary challenge that comes up for Enterprise mobile applications is scalability and availability of the apps across regions. 

This is where a cloud platform, can help, especially, if the platform could do a service from backend that can connect to any of the form factors, either a mobile, laptop, slate or tablet. Having this service in cloud makes the service extremely scalable, with increasing number of users across devices.

Windows Azure as a cloud platform brings about a nice feature of providing Backend as a Service (BaaS) through Windows Azure Mobile Services (WAMS). WAMS provides an extremely easy way to develop scalable backend on cloud that can connect to mobile or client applications. 

With this move, Windows Azure has established in the world of cloud in PaaS-IaaS-BaaS stack, thereby distinguishing from other cloud providers like AWS, who are yet to provide such a kind of service.

The other interesting part of Azure mobile services is that this service can be integrated to any of the mobile phone applications, such as Windows Phone, Andriod, iOS or even an HTML5 app. So now the question comes up on when exactly should we look at using WAMS.

When should you use Azure Mobile Services:
1. When you want your mobile application to be available across devices including Windows 8, Windows Phone 8, iPhone, iPad and Android

2. When you need to create highly functional scalable mobile applications using Windows Azure

3. When you need to enable back-end capabilities of existing native mobile applications

4. When you want your app to integrate with with well-known identity providers (like Live ID) for authentication.

5.  When you want to integrate with notification services to enable push notifications in your app.

6. When you need to integrate your mobile app with other cloud services

7. When you want to enable service monitoring and logging in your mobile applications.

If any of these requirements sound familiar to what you are looking for, then do login to Windows Azure  portal and check out this cool feature of WAMS here :)

In the forthcoming blog posts, I'll be writing more on how WAMS can be developed and consumed in HTML 5 applications and other mobile applications.