When Apple first launched the iPhone App Store, they sparked a gold rush where developers from all over the world were racing to create the next big thing. As the number of apps grew into the hundreds of thousands and the rate of introduction of new apps accelerated, it became very important for developers to carefully and strategically evaluate their new app plans. Here are some steps you should follow:
1. Conceptualize the app clearly
Every app starts as an idea. Whether it's a completely new concept, the combination of two or more existing concepts, or just the improvement upon an existing app, it is very important to have a clear idea of the app you want to build. Maybe you want to take an exciting Web or desktop application to a mobile platform, or maybe you are looking to use an app to help market your idea, product, service, company, or even yourself. In any case, the first step to any successful app is to have a clear vision of what the final app should be.
2. Do your market research
Once the concept has been clearly articulated, it's time to do your market research. Identify all competing apps as well as the ones that are similar but do not compete. This research should not be limited to the category your app will be in. Look at which of the apps are successful and those that are not. Look at the app description text in the App Store, the screen shots, the product and developer website, and even install the apps and play around with them, looking for their strengths and weaknesses. Identify the elements that you want to emulate in your app, and the elements that you want to stay away from.
3. Create your initial design
Next, you need to put a design together. Generally speaking, unless you have a lot of experience designing iPhone/iPad user interfaces, you'll be more successful just working with simple paper prototypes that leave the small details to the imagination. In many cases, subtle elements of the design may greatly increase the complexity of developing the app; at this phase of the development cycle, it's much better to document the high-level user experience and not get into the details just yet.
4. Create a prototype
Usability is the most important aspect to any successful mobile application, but you really have to experience an app to get it right. Descriptions and mockups just cannot compare to a functional prototype. Whether you're developing the app yourself or hiring a third-party developer, you should insist on several iterations of a functional prototype before you attempt to build a final product. Prototypes should be developed with quick and dirty coding, not full-fledged implementations that are expensive and time consuming to change and evolve while you're still refining the application concept.
5. Develop the app
Once you've refined the user experience through a series of iterative prototypes, it's time to start coding for real. If you're a programmer/developer, the temptation to start doing this much earlier is great, but you really need to wait until this step before you do any serious coding. It will almost always cost you a lot in time and money if you start coding too early.
If you need to hire a developer, understand that the quality and cost will vary widely based on the developer's experience, expertise, and specialty. Ask to see comparable apps they've written. Understand that, for instance, developing data-driven apps requires different skills than developing games. Make sure potential developers have the right skill set for your app.
6. Market and distribute the app
Approach your PR and marketing activities with a strategy. Rankings within the App Store are based on a rolling 24-hour sales cycle. Because of this, it's often very effective to "bunch" your marketing and public relations activities to help jump start your entry into the app store.
Keep your eyes wide open all the time!
Whatever your goals are, just take care to jump into App development with both eyes wide open and a clear vision of where you want to end up. Good luck in your ventures, and please feel free to drop me a note to let me know about your successes!