FOR DEVELOPING
MOBILE CLOUD
Home
Best practices for developing mobile cloud apps revealed
here
’
s two waysyou can build your
mo-bile applications: native applications, or
mobile cloud applications. Which option
is best for your organization? This e-guide
sheds light on the pros and cons of each, and expert Bill Claybrook
offers key advice on how to successfully develop your future mobile
cloud apps.
Home
Best practices for developing mobile cloud apps revealed
BEST PRACTICES FOR DEVELOPING MOBILE CLOUD APPS
REVEALED
Bill Claybrook
Author’s note: In the past, mobile apps have been viewed as either native apps or Web apps. In this article, we include Web apps in the grouping of mobile cloud apps because they run outside the mobile device and have data storage outside the mobile device. The phrase “mobile cloud computing” typically refers to an en-terprise cloud computing infrastructure that has been extended to handle mobile devices. Users are provided with data storage and compute processing that reside on a cloud-computing platform rather than on the mobile devices themselves.
When developers build mobile apps, they have the choice of building either apps that are installed and run natively on remote devices (native apps), or those that run in mobile cloud environments (mobile cloud apps). Native apps and mobile cloud apps each have their inherent advantages and disadvantages.
Native apps run on remote devices such as smartphones and tablets and are built specifically for a device and its operating system. Native apps have the
Home
Best practices for developing mobile cloud apps revealed
ability to leverage device-specific hardware and software, meaning that they can take advantage of the latest technology available on mobile devices, such as GPS, camera, location and locomotion. This can be construed as an advantage for native apps over mobile cloud apps.
Mobile cloud apps run on servers with their data stored in the cloud. Users access the app through a browser window on the device. Mobile cloud apps are generally developed independent of operating systems and can be more robust than native apps because there is more compute power and storage available in the cloud than on the much smaller remote device. Mobile cloud apps present advantages over native apps because security and other management aspects can be more easily centralized.
Here are some best practices to help ensure that the mobile cloud applica-tion development process goes as smoothly and successfully as possible:
DEVELOP ONCE, RUN EVERYWHERE
Because many organizations are implementing Bring your own device (BYOD) strategies, it is important to try to design and implement mobile apps that can be built once and run on multiple remote devices regardless of the device’s characteristics. Mobile apps developed to run natively only on the targeted
Home
Best practices for developing mobile cloud apps revealed
devices, requiring the apps to be ported or rewritten to run on another device. Mobile cloud apps run in the cloud and are created independently of operating systems and specific device features. By using various technologies such as HTML5 and mobile enterprise application platforms (MEAPs), mobile cloud apps can be developed and made available for many devices without the need to rewrite the code.
IMPLEMENT HYBRID APPS TO TAKE ADVANTAGE OF DEVICE HARDWARE
Hybrid apps allow mobile cloud apps to take greater advantage of mobile device hardware. With a hybrid mobile app, the user interface to the mobile cloud app appears in a browser window, with a native app wrapped around it to provide access to onboard device functionality that is not available via the browser.
A hybrid app looks to the user like a native app. It is downloaded from an app store, stored on the mobile device and initiated like a native app. But there is a difference from a developer point of view. The developer does not have to rewrite the entire mobile app for each device. Some of the code writ-ten in HTML5, CSS and JavaScript is reused across multiple, different mobile devices.
Home
Best practices for developing mobile cloud apps revealed
USE TECHNOLOGIES SUCH AS HTML5 AND MEAPS
HTML5 is a set of technologies consisting of CSS3, rules, properties and Ja-vaScript APIs. It simplifies your development cycle by letting you use the same technology stack across multiple devices. You can deploy on more devices more quickly and easily by developing mobile cloud apps instead of native apps for a quickly growing list of mobile devices. HTML5 supports remote device functionality, providing an experience closer to the look and feel of a native app while allowing you to write code once and enable it across various mobile devices. It discovers characteristics of remote devices to present information automatically adjusted to fit the remote device’s display size, resolutions, dis-play orientation, height and other unique features.
Not all browsers, smartphones and tablets support all of the HTML5 fea-tures, but most of the major browsers support some of them. You should make sure that HTML5 is supported on the browser that you are using.
A mobile platform is software that sits between a mobile device and an app. It runs on the mobile cloud and does some tasks specifically for mobile devices, such as converting data into a user-friendly interface and making sure every-thing fits well on the device’s screen. It also has an authentication mechanism that reaches all the way down into the device so that if it is lost or stolen, it can
Home
Best practices for developing mobile cloud apps revealed
be wiped remotely.
MEAPs allow organizations to deploy mobile apps across a variety of de-vices by reusing code and without having to implement an app for a specific device. They also allow administrators to selectively run applications natively on the remote device when it is very important to take advantage of key features or when it is difficult to emulate native functionality on a mobile cloud server. A number of MEAP or MEAP-like platforms are available, including Sybase Unwired Platform, WebMobi and Appcelerator Titanium.
SYNCHRONIZE DEVELOPMENT AND TESTING
Even though mobile cloud apps run on mobile cloud servers, you should syn-chronize application development with testing and development done for mo-bile devices and the technologies used to make momo-bile cloud apps write once and run everywhere.
The average lifespan of a mobile device is now about one year, and the lifes-pan of mobile software technologies is even shorter, according to technology firm Lionbridge. This challenging environment requires a new approach to software development and testing. Rather than waiting until the development of a mobile cloud app is complete, app testing needs to be in step with cloud
Home
Best practices for developing mobile cloud apps revealed
development and device testing in order to detect and correct flaws as early in the project lifecycle as possible.
TAKE ADVANTAGE OF MOBILE CLOUD SECURITY
Running security software such as Kaspersky and McAfee and antivirus pro-grams on mobile devices is one of the simplest ways to detect security threats. But mobile devices have limited power and processing capabilities so protect-ing them from threats is difficult. For instance, it is difficult, if not impossible, to keep virus detection software running continuously on a mobile device because of the device’s power limitations.
Most, if not all, security threat detection capabilities can be moved from mobile devices to the mobile cloud. Multiple virtualized malware detection engines (running on the mobile cloud) can then be used to do the actual threat detection. This involves deploying a simple software agent on each mobile device and placing the complex, mobile device-specific detection software on the mobile cloud. The agent inspects file activity on the device, places this ac-tivity in a file, and sends the acac-tivity file to a mobile cloud service for analysis. The cloud service periodically receives activity files from agents and identifies malicious or unwanted content. A single agent activity file can be analyzed by
Home
Best practices for developing mobile cloud apps revealed
multiple virtualized detection engines to determine if the file contains intruder attempts to compromise the mobile device.
This cloud-based approach has several benefits, including increased virus detection coverage, less complex mobile software and reduced mobile device resource consumption. This approach will become even more valuable as the scale and sophistication of mobile threats increase.
Home
Best practices for developing mobile cloud apps revealed
FREE RESOURCES FOR TECHNOLOGY PROFESSIONALS
TechTarget publishes targeted technology media that address your need for information and resources for researching prod-ucts, developing strategy and making cost-effective purchase decisions. Our network of technology-specific Web sites gives you access to industry experts, independent content and analy-sis and the Web’s largest library of vendor-provided white pa-pers, webcasts, podcasts, videos, virtual trade shows, research reports and more —drawing on the rich R&D resources of technology providers to address market trends, challenges and solutions. Our live events and virtual seminars give you ac-cess to vendor neutral, expert commentary and advice on the issues and challenges you face daily. Our social community IT Knowledge Exchange allows you to share real world information in real time with peers and experts.
WHAT MAKES TECHTARGET UNIQUE?
TechTarget is squarely focused on the enterprise IT space. Our team of editors and net-work of industry experts provide the richest, most relevant content to IT professionals and management. We leverage the immediacy of the Web, the networking and face-to-face op-portunities of events and virtual events, and the ability to interact with peers—all to create compelling and actionable information for enterprise IT professionals across all industries and markets.