Author, Daniel Offer, project managed the design and development of the Facebook Blackberry application “Chit Chat” when Athena IT Limited ported their Windows Facebook messaging software to the Blackberry smart phone. Daniel outlines 10 things that you ought to consider when designing a mobile phone application.
1. Objective of The Mobile Application
The most important consideration when considering developing a mobile application is what is the primary objective of your app. If your developing a game, then your primary objective is likely to make it fun. On the other hand, if your designing an functional tool such as a calculator, then the primary objective is to solve the users problem – in this example, solve mathematical problems correctly.
If you lose sight of your objective, your mobile application will be doomed to failure.
2. Graphical User Interface
When designing the interface with which your users will use your mobile application you ought to consider
(a) existing design standards – use controls (text boxes, scroll bars, buttons) that users are familiar with in the way in which they are used in other standard applications. Using standard design controls will make your application cheaper to develop and easier to use.
(b) potential user feedback – I would suggest that you design a few concepts and then speak to potential user and ask what they think is the best, as well as how to improve existing designs.
(c) alignment – make sure that the alignments of buttons, and text boxes are nicely aligned
(d) easy to use – ensure that the design is inviting and intuitive
3. Screen Size Of Mobiles
One of the most important considerations of developing for mobile phones is the screen size that you have to work with. In summary, this means that highly complex interfaces are not possible.
If your developing for the Blackberry Smartphone or the Android platform you need to consider that there are several different screen sizes to cater for. This can create complications.
More importantly, your screen designs will need to be translated and cut up into code and images – so the more complex your screen designs, the more costly it will be in terms of programming time to implement your designs.
If you’re not an artist, consider outsourcing your screen designs – and choosing the best.
3. Operating System Minimum
You need to consider what platform you’re developing for – normally that would be android, blackberry or the iPhone. Each of these platforms is very different, I strongly recommend that if you’re developing an application for the first time that you select one platform before moving on to developing on a different platform the same application.
You need to consider what the minimum operating system is that you are willing to support. So for example, if you’re developing for the iPhone do you want it to work on the 3GS? If so, you’ll need to make sacrifices in terms of 4G/4Gs functionality.
4. Communicating With The End User – Use Of Senses
One often overlooked consideration is the use of senses when designing an application, in particular sense preferences and disabilities.
For example, whilst it may make sense to you for financial reasons to avoid catering for visual disabilities such as red /green color blindness. You may wish to consider that some people prefer to have their phones on silent and so you need to make use of visual alerts as well as vibrations – moreover, some people hate vibrations so you need to make use of visual alerts and sound.
How will your application be controlled? Are your controls intuitive, do I have to read the instructions?
If you have to read the instructions in order to use your application then you’re going to alienate a lot of potential users. I don’t know about you, but I avoid reading the instructions whenever possible – I just want to use that app right away.
6. Level Of Functionality
Sure, it’s nice to customize some things, but do you really need it? Is it adding value. One of the lessons that I learn when developing our Blackberry Facebook app is that I added too much functionality in the first phase – this resulted in additional costs, additional development time and the functionality added didn’t really add enough value to delay the “first release.” Consider working in phases.
7. How To Make It Fun
If you’re developing a game, you need to make it fun. Sounds obvious right? As I’m sure your aware, not all of the games developed for mobile are fun to use – many are just frustrating.
8. Bugs – Not The Bunny or Insects
The single most important aspect to consider when developing a mobile application is bugs, everyone hates them – not every development team adequately tests and deals with them.
When developing you need to do full tests and segmented tests (a particular aspect) of your application when its caused for. Before approving your application for release, do need to do a thorough fully test – testing in every conceivable way that your application will be used.
Dealing with bugs is very important before releasing or moving on to the next phase of development. Consider using ticketing/bug tracking tools such as Bugzilla and Assembla to manage development.
9. Expertise – Marketing, Coding and Designing
No one knows everything. Most people specialize in a particular area. That said, a friend of mine Alistair Aitcheson develops, designs, manages and markets his own iPhone app “Greedy Bankers” it’s a great game but chances are you don’t have the knowledge or time to develop, design, manage and market your own mobile application.
I would strongly urge that you don’t do everything yourself. Consider doing just a couple of most of those aspects and outsource the remaining tasks using a platform such as vWorker or Elance. Do what you’re strongest at and outsource the rest.
10. Competition and The Idea
Before you even start you need to understand who your competition is, can you realistically gain a segment of the market? Is your project financially and technologically viable?
Consider brainstorming a variety of ideas before you start and choose the best most feasible idea. This idea you’ll likely be stuck with for a long time for better or worse, so make sure you’re comfortable with your decision.