The Android platform has millions of users and is growing each day. With this growth so do the number of people that want to explore the platform by creating their own Android app. While a lot of those people are professional software developers, there are many that have little to no experience in developing and publishing software. This led me to write this series on creating your own Android app: “Creating your own Android app, from vision to reality”
In this series I will be covering the development cycle from concept to deployment. I Will give my recommendations on what steps you should undertake to get your app to the public. This series is not a big tutorial on how to program for the Android platform, instead I will be covering the most important steps you should take to make sure your project gets to a successful end. I Hope it will serve as a guideline for those who are new to developing software and maybe even be useful for those who have experience in this field. In the last 11 years I have been developing on various software development projects, I’ve tried to create a simple guide on the methods I’ve seen work best and so hope to help to prevent my readers from falling into the well known pitfalls that these projects have.
I Will be using techniques from various well known software development management methodologies like Extreme programming, Prince 2 and Scrum. I Might not follow these methodologies to the exact specifications because I only use the parts that I find work best for myself. I Can recommend anyone that is serious in developing software to read up on these methods, you will find that each one of them will have some points that might benefit your development cycle.
Keep in mind this series is meant to be a helpful guide and not a set of instructions that should be followed exactly step by step. Try out what steps work best for you and in the I hope you will have a software development cycle that gives great results.
I Hope you will enjoy reading the series as much as I have writing it.
Before you can begin developing your app you need to have a good concept. The concept starts with a simple idea, don’t go into details yet. A concept can be something as simple as “an egg-timer app” or complex like “a social network platform where users can share their activities and photo’s”. Your concept should be short and to the point, try naming your concept in just one sentence.
After you have stated your concept the next thing you should be concerned about is your budget. This step is very important because it can give you a clear indicator if your project can be realized. A lot of developers start a project but never finish it, this usually is due to the fact that the project is simply too large for their budget. Your budget can be a financial budget or a time budget. If you are hobbyist and want to develop your app next to your work or school, you should try to estimate how much of your free time you can spend on your app. Is it realistic to create a large social network without a financial budget to outsource work and with only a few hours each week you can spend on it yourself? Try to be honest to yourself, it’s much better to just let go of a big project that you will never finish at this point than to have worked on it for months and come to the same conclusion.
It’s important to know who your users are going to be. Are they teens, young adults or maybe elders. What kind of people are they? Are they male or female. What kind of interests do they have, computers, sports, music? Ask yourself these questions and make a good profile of the sort of users you are creating your app for. This is vital information for the whole process of creating and publishing your app. For example, your user interface might be targeted to kids and have happy images and simple text, or maybe large fonts and buttons for users that have difficulty reading. Also your promotion banners and marketing will depend on you knowing what the target audience is. It’s no use to promote an app about cooking on a gaming site and vice versa.
Brainstorming is a great way to get new ideas. You can do this by yourself or include a group of people. Involving other people can be really helpful to get more ideas. I Would suggest to do a brainstorm session before every mayor release. By having a brainstorm session for every release you might get new ideas based on the app as it evolves, it can also bring new ideas based on current technologies. A Good brainstorm session is quick and limits the amount of time spend on every idea. Write down words or small sentences on a piece of paper and don’t worry about the technical aspects of the features you are writing down. After each session scrap the ideas that are obvious out of reach and the ones you don’t like.
Once you have sorted out your brainstorm sessions it’s time to create a large feature list. Just write down a long list of feature you would like your app to have. This might include some feature you are not sure of how and if you will create them, but that’s OK. Think of this list as a dream list, the ultimate version of your app.
This is a list of books that are related to this post.
Till next time
That’s it for this post. In the next chapter I will cover the Planning stage, make sure not to miss it by subscribing to my blog with the RSS icon on the top of this page.
Till next time, happy coding!