I’ve been on a tour the past three months, meeting clients interested in app projects. There are a lot of questions asked. Currently, these are the top 10 most commonly asked questions.
1. What platforms should we build for?
Only iOS (iPhone and iPad) and Android have a user base that downloads, buys, and uses apps to any relevant degree.
Other platforms are also app oriented, but their respective users are either too few or have a too weak app download pattern to be relevant. This might change in the future, but today, this is a good rule of thumb.
2. Do we need to develop different apps for different platforms, or are there any cross platform frameworks?
Yes, you need to develop different native apps for each platform. There are cross platform frameworks but none of them are strong enough. Some of the more interesting options include Sencha, SproutCore, and Titanium. Long term, I believe HTML5 will have the strongest industry support and provide a solid framework even for app development. This won’t happen in the next 18 months, though. Remember one thing: an iPhone app should look and feel like an iPhone app, and Android app like an Android app, and so on. If you go cross platform, make sure you first understand native and that you never sacrifice user interface and user experience.
3. How much more time do we add if we want to develop the app for more than one platform?
It depends on what type of app you are developing. But a general approach is to add 30-50% to the project.
4. Is it possible to distribute apps internally, ie not through any of the public app stores?
Yes, it is. Each platform has different solutions to this, but it is possible and it is becoming more and more common.
5. Can we reuse system integration efforts already done in our web project?
Yes, the app project should make use of as many current system integration efforts as possible. It’s not uncommon for the app project to add one layer to the integration architecture for JSON conversions.
6. iPhone vs Android learning curve. Is Objective C more difficult to learn than Java?
It’s not about the language, but about the SDK you target (Cocoa Touch or Android SDK). Learning curve is about the same.
7. Can you sell goods through you app, how is payment done?
Yes, you can. For iPhone: Apple won’t allow you to ask the user for a credit card number. If you choose to use the user’s Apple account, Apple keeps 30% of the transaction. Most online retailers choose to have the user create a user account first, then have the user login through the app. The account can be used for invoicing/credit cards. These restrictions don’t apply in Android apps.
8. Why not just a web site adapted for mobile web browsers?
An app-phone user prefers to use functionality and consume content through an app, rather than through the web browser. Data from IDG supports this and shows that an app drives up to eight times more traffic than a mobile web site.
9. How is an app project run?
Like any software development project: goal/purpose, scope, sketches and visualizations, design and development, test and deployment. We prefer to use iterative development, such as Scrum. The app project has a very distinct focus on user experience and user interface.
10. What types of apps do companies typically start with?
Companies typically start with selecting information and functionality already offered on their web sites, adding app characteristics (such as GPS and camera).