Mobile apps may use the cloud for both app development as well as hosting. A number of unique characteristics of hosted apps make the mobile cloud different from regular cloud computing. Mobile apps may be more reliant upon the cloud to provide much of the computing, storage, and communication fault tolerance than regular cloud computing does.
Understanding these differences helps a lot of predicting and heading off a number of problems with the mobile cloud computing, and enables you to deliver predictable, reliable and fault-tolerant mobile app experiences. Here are some of the key differences:
- Total cloud dependency - When using mobile cloud computing, apps may rely on the cloud for everything, especially when you are trying to develop the same app to run on multiple platforms at the same time using a browser interface. An example of this is an app that runs on Apple iOS, Android, BlackBerry and Microsoft Windows Phone operating systems. Because of the differences between these platforms, developers may rely on the mobile cloud to perform all of the computing and storage to avoid multiple development and maintenance efforts with individual native apps.
- Mobile cloud computing needs to overcome mobile device differences –The mobile cloud may need to approximate more or less the same end user experience on all platforms to avoid device specific customizations. Unlike traditional cloud usage, the mobile cloud may need to do these adjustments on its side based on what the mobile device being used is.
- Mobile cloud computing needs to allow for disconnected operation – Mobile devices may go out of range while an application is being served from the mobile cloud. It needs to support disconnected operation as much as possible.
- Mobile cloud computing needs to be communication fault tolerant – Mobile connections can become weaker and may even disconnect while an application is being used. The cloud may need to be capable of monitoring the connection strength and needs to be fault tolerant of these possible communications disconnects.
- Distance matters in mobile cloud computing – Mobile applications when using the mobile cloud may be sensitive to network latencies caused by distance from the server much more than regular cloud computing. The mobile end user experience may suffer if these latencies are too long.
- Mobile cloud computing needs to be mindful of limited energy availability on mobiles – The mobile cloud needs to be mindful of the limited energy availability on mobile devices and may need to perform all functions on the side of the cloud, rather than expect them to be done on the mobile device.
- Expanded testing capabilities – The mobile cloud needs to have additional testing capabilities that allow testing for poor network latency, unreliable and intermittent communication with the mobile device, disconnected operation and subsequent synchronization of data with the app on the mobile device.
More resource on mobile cloud computing
Mobile apps demand a lot more from the mobile cloud than regular cloud computing. Most of these differences are due to the limited energy availability, network latencies and unreliable connectivity in mobile devices. Fortunately, recognizing these differences and adding additional capabilities to the mobile cloud to address them, you can deliver as good an end user experience on mobiles, as you can on desktops and laptops.