Gartner’s Magic Quadrant for Mobile Application Development Platforms announced on 26th April showed that the MADP market continues to be largely distinct from the larger application development tools market, because developing mobile applications for enterprises presents unique challenges.
1. Each mobile OS has a unique presentation style, interaction style and software stack.
2. Devices have different screen sizes, input modes and hardware capabilities.
3. New devices and OS versions are introduced multiple times per year.
4. Network connectivity and power levels fluctuate widely in typical usage scenarios.
5. New consumer applications regularly extend and revise the standards for good mobile applications.
Designers have to make complex trade-offs between native, hybrid and Web-oriented mobile architectures. From 2003 through 2009, Gartner observed that the majority of high-value mobile applications were written as native, but that began to change around 2009 as techniques for wrapping Web technologies emerged. These techniques create hybrid mobile applications (wrapped applications, where the container is native code, but the experience leverages the WebView capability of the OS) or as mobile Web applications. In addition, some Web-oriented applications began to offer HTML5 features, such as advanced rendering and local storage, that previously were only available within the native style.
This caused a rapid shift of focus for many enterprises toward Web-oriented techniques — so much so that, based on our surveys conducted in 2011, 40% of enterprise application developers were still targeting native first for a variety of reasons (such as performance and disconnected mode). This migration will continue for two to three more years, and we predict that, by 2015, 80% of all mobile applications developed will be hybrid or mobile-Web-oriented.
MADP’s are chosen based on the capabilities they bring in supporting one or more of these modes.
These complexities drive higher costs in every phase of the application life cycle:
1. Designers must design applications flexible enough to adapt to multiple device types as well as network and power conditions.
2. Developers often must write OS- and device-specific code to meet business requirements. Worst case, they write entirely separate code with different programming languages and unique device, OS, database, and middleware calls for each target mobile device.
3. Quality engineers typically have to test a wider set of use cases than for Web and traditional applications. Worst case, they certify an application for thousands of mobile devices, on multiple networks, in a wide variety of conditions.
4. Operations managers must often use multiple, nascent tools to deploy and manage mobile applications.
5. Security managers must cope with a wide variety of mobile OSs, devices, and networks, as well as the frequent theft and loss of devices.
MADP’s can significantly reduce the cost and complexity of mobile application development by:
1. Providing designers with flexible frameworks that automatically adjust to multiple device formats and OS-specific presentation and interaction styles. Some MADPs also make it easier to build applications that adjust to different network and power conditions.
2. Providing developers with write-once, deploy-many tools to boost code reuse across multiple devices and OSs. Many MADPs also provide tools that simplify the integration of mobile applications with enterprise applications. Some MADPs even provide specialized 4GLs and prebuilt applications and templates to further reduce development costs.
3. Pretesting clients and components for a wide range of deployment scenarios to eliminate the need to test different scenarios.
4. Providing integrated software asset management tools for deploying and managing applications.
5. Providing built-in security components for authentication and encryption, as well as integrated tools for controlling application and data access.
MADP vendors generally deliver one of three types of technologies to the market:
1. Native toolkits, like Apple’s iOS development toolkit, enable the development of native applications for a single mobile OS platform.
2. Web toolkits, like jQuery Mobile, enable the development of Web-based applications that perform well in Web browsers for various mobile OSs and devices.
3. Cross-platform suites, like Antenna AMP, enable a single application to execute on multiple mobile devices, using the device- and OS-specific client applications.
While these three different types of technologies require very different investment, skills, etc., enterprise’s often evaluate them side by side when selecting their MADP, because each has its own strengths and weaknesses:
1. Native toolkits provide the most capability for a particular OS platform, but they are limited to only one OS platform.
2. Web toolkits are inherently multiplatform and leverage standard Web skill sets, but have performance and interaction style limitations, lack feature phone support, and require a strong network connection. By using wrapper tools, like Adobe’s PhoneGap, Web toolkit applications can be compiled into OS-specific hybrid applications for high-end smartphones and tablets; can access OS-specific functions; and can run in a degraded mode when no network connection is available.
3. Cross-platform suites are optimized for quickly developing applications that run on a wide variety of mobile OSs and devices, but without the limitations of Web toolkits. Some can even generate mobile Web, native and hybrid applications from a single set of code. Cross-platform suites tend to address application design, integration, testing and management more extensively than native and Web toolkits. However, cross-platform suite software is typically much more expensive and requires that application development staff learn more proprietary skills than for native and Web toolkits.
Many enterprises start out developing customer-facing mobile applications, using a native or Web toolkit as their development platform. Others have long histories building employee-facing applications with an MADP from pure-play vendors. As the demand for mobile applications grows and requirements emerge for both customer-facing and employee-facing applications on all types and brands of mobile devices, enterprises often move to more-comprehensive MADPs that promise “write once, run anywhere” development and efficient application management.
MADP vendors fall into five somewhat overlapping categories, each of which has advantages and disadvantages:
1. OS platform and device vendors, like Google and RIM, look to encourage application development for their products.
2. Pure-play MADP vendors, like Syclo, primarily provide mobile application development tools, services, applications and templates.
3. Mobile application vendors, like Spring Wireless, primarily provide mobile applications, but make the underlying platform available to customers.
4. Enterprise software vendors, like SAP, provide MADPs that are integrated with their broad product portfolios, extensible to competitor products and for independent applications.
5. Open-source projects, like the Dojo Toolkit, provide basic frameworks augmented by community intellectual property and support.
Competition is driving most vendors toward providing the enterprise ideal for an MADP, namely one that is comprehensive, standards-based, and write-once, deploy-many.