In Part One, I talked about the importance of understanding customer use cases and mapping them to your business objectives when developing your mobile strategy.
In this post, I’ll talk about some of the technical considerations you’ll have to address.
Step 2: Prioritize Mobile Device Support
Now that you know what you want your mobile presence to accomplish, you need to determine which platforms and devices you want to support and how you’re going to prioritize your efforts.
There are over a hundred phones available for sale at any given point in time. Which ones are your customers most likely to use? Which ones can deliver the experience you want?
This is important because of the wide variety of parameters to consider within each device.
Hardware diversity:
- Differences in screen parameters (size, color depth, orientation, aspect ratio
- Memory/memory size
- Processing power
- Input mode (keyboard, touch screen, etc.)
- Presence of additional hardware (camera, accelerometer, gyroscope)
- Connectivity options (Bluetooth, IR, GPRS, etc.)
Software diversity:
- Platforms: differences in platform/OS (Apple iOS, Google Android, Nokia (Symbian, Meego) RIM (Blackberry OS, QNX) HP WebOS, Microsoft Windows Phone, Mobile Linux, etc.)
- API standards (MIDP 1.0, MIDP 2.0, etc.), optional APIs, proprietary APIs
- Variations in access to hardware (e.g., full-screen support, access to local storage)
- Multimedia support (e.g., video codecs such as H.264, Flash or WebM)
- User preferences: language, style, etc., or accessibility requirements
Environment:
- Deployment infrastructure (e.g., branding by carrier, compatibility requirements of the carrier backend APIs, gateway characteristics, opened ports, restrictions on access to outside the network, etc.), locale, local standards
- Carrier restrictions
So, start by considering the demographics of your target audience:
- Business or consumer users? This is a critical-path question because the market share of devices and platforms varies greatly. Business user smartphone adoption rates are off the charts; Blackberry has a significantly higher business than consumer share, although Apple and Android adoption is rising quickly.
- Geography matters because there is significant skew in feature-phone versus smartphone adoption and mobile operating system market share by geography. Some businesses cater to customers in specific geographies, while others target customers globally. Understanding who your lead users are and where you derive most of your revenues will significantly impact your device support choices. For instance, Nokia’s Symbian OS has a virtual monopoly in Africa and a strong position in other developing regions, but close to zero penetration in North America, whose Smartphone market is dominated by Apple, Android-based devices, and RIM’s Blackberry.
But the need to support feature phones seems to be falling farther and farther down the priority list, if at all.
Today the top-end smartphones are over $500 without a contract, but there are $130 Android phones with no contract and others that are free with contract.
Apple just recently lowered the price of the iPhone 3GS to $49. And recent announcements by Broadcom seem to indicate that prices for smartphones will be driven down even further, putting smartphones in the reach of just about everyone.
Step 3: Evaluate Technology Options
Now that you’ve narrowed down the list of devices that you want to support, there are still some technology decisions to be made.
Decision #1 - App-Centric v. Mobile Web-Centric...
There are two primary strategies for delivering content to your customers over mobile devices. There are technology decisions to be made as a result of your choice, but it’s really a philosophical decision based on whether you subscribe to an “App-Centric” view or a “Mobile Web-centric” one:
- App-Centric: Device-specific apps are created, enabling support for the on-device hardware capabilities (cameras, microphones, location, Bluetooth), and taking advantage of on-device storage capabilities for offline access and deeper integration with phone, messaging and calendaring apps.
- Mobile Web-Centric: This method is device-agnostic; the application is delivered over the mobile web using full web technologies (e.g., HTML/HTML5 Javascript, CSS). The upside is that today most WebKit-based browsers can support this, greatly reducing compatibility and portability concerns, but since it is reliant on a constant connection to the Internet, it’s not a good fit for all use cases.
The strategy you choose is a critical decision, as it will impact your mobile software product development roadmap. There is no right answer, just a right choice for you. But it must align with your mobile strategy objectives, your understanding of your users, and the anticipated use cases.
Decision #2 - Native Development v. Cross-platform Frameworks...
The type of framework you use is another key decision that relates to portability, testing efforts and distribution.
Native client applications use OS-specific development tools to build the app. Cross-platform frameworks from companies like Kony Solutions, PhoneGap, Sencha Touch and Sybase enable you to develop your application using WYSIWYG tools and then generate device-specific application code.
There are pros and cons to each approach. Again the decision of which path to choose is about your business objectives, not "technical superiority".
[table id=1317 /]
NB: This series is a summary of a white paper on mobile strategy in travel by Ness Software Product Labs. The full whitepaper can be downloaded here.