Welcome to the final post in a blog series on three concepts decision makers must understand for their own mobile application development. Our first post was an overview of the three decisions we’ll be diving into in this series. The second post focused on the audience and platform support for your mobile application development. Our third post covered form and interaction with mobile devices. In this post, we’ll cover speed to market and general deployment considerations.
I Need It Available Yesterday
If you’ve ever been given a task to meet an opportunity or managed a product line under stiff competition, you’ve probably heard that line before. Many companies have been developing mobile strategies and finding the right people, either internal or external like RDA, to build those apps. As mobile application development has changed, so have those strategies for taking them to market.
When talking about speed to market, if you’re not a pioneer in technology in your industry, you are usually chasing that pioneer, whoever they are. That means you generally evolve the path that has made itself known by those who have blazed it. The advantages to this common strategy are that you spend less time pursuing iOS development or Android development on features that were not the best direction that hopefully those pioneers wasted resources on. You learn on their R&D dollars in essence. Just because you’re not the pioneer doesn’t mean you stay passive though as you still must learn from their mistakes.
This also means once you have your functional requirements, you need to move quickly and prudently. Thanks to the earlier posts in this series, you have a thought guide of what your app is going to look like and the work involved in the scope of those requirements. This is where we get to a fork in the road technologically speaking which affects your mobile app greatly.
Web vs Wrapper vs Native
Let’s talk through some of the pros and cons:
Mobile applications can be those you download off an app store or they can be web applications targeted at mobile devices.
- Leverage existing database connections of existing web product if need be
- No worry of old versions of apps lingering on end-user phones because you have the application on your web server
- Mobile browser support is currently inconsistent especially around HTML5/CSS3 functionality
- User-agent generally defines the experience delivered, but this can be frustrating for a user that is specifically looking for the full-site instead of mobile site so it must be accounted for and allowable to switch between designs.
- Little or no access to phone sensors (camera, GPS, etc.)
- Must account for touch interface that may not be intuitive to browsers compared to apps (i.e. no hover events over an image)
Wrapper frameworks like PhoneGap provide a native app experience with the deployment benefits of a web application targeted at mobile devices.
- Same pros as website
- Downloadable as app from the mobile platform’s store
- Performance for intense graphic or game apps will be significantly less than native apps
- Must pay careful attention to the UI/UX across different platforms as choosing from a dropdown will look different between iOS development and Android development. Interactions with other apps will also differ in workflow.
Native apps are written for a specific mobile device.
- Best performance for resource intensive apps
- Consistency in controls of the mobile platform
- Least amount of data transfer from webservice infrastructure
- Device support can be as troublesome as browser support even across the same form factor
- App stores make updating easier, but not absolute. Old versions could still be used and must be accounted for when designing webservices.
- Each mobile platform requires development individually in many cases. iOS development is different from Android development and must be treated as such from a development maintenance, and roadmap perspective
- Some stores require an approval process that can slow deployment.
Hopefully this series has offered an intro for those considering mobile application development. RDA has an incredible staff that can guide you through some of these decisions and help make your mobile app project a success. If you have a mobile application you would like to talk to us about, please reach out to us through phone or email and we would be happy to talk to you about it. Keep up on our blog and we’ll keep you informed of the latest happenings in mobile application development.