An application needs three requirements to become a great application.
A good idea, a good design and good usability.
An application that possesses only two of these three requirements will have serious difficulties in succeeding with Google Play or the App Store - and to succeed in markets, you add marketing and luck to the equation, but we’ll discuss that later. Imagine an application that implements a good idea, which is usable, but the design is really ugly. Surely you're thinking about downloading another app that does the same as you uninstall the original. Or worse, a good idea with a nice design but it's a real pain to use because there is no way to hit the beautiful, but little, submit button. With these 5 keys + Extraball on usability, you’ll be on your way. Let's begin!
Touchable areas that are large enough Of the most important keys, and the one that tends to be forgotten most by developers and designers, is to make the clickable interface elements big enough to touch comfortably. In Android, Google recommends at least 48dp pixels, and Apple iOS recommends minimum dimensions of 44 x 44, although in our experience reality is 32 x 32 pixels. Remember that every time an app user attempts to press a button and fails, God kills a kitten :)
Take advantage of the entire screen
But don’t saturate with information. Display only the information needed at the time, what the user needs, or is looking for. The screens of mobile devices, despite the mad rush for "I’ve got the biggest" which we see now, have size limitations. Always intend for your application to efficiently exploit the full width and height of the screen. Always remember to add a header, button, or other interface element so that a good piece of screen remains. Then you can decide whether the button or the header are absolutely necessary. If your application has distinct sections, think if it’s feasible to add a lateral menu, like Facebook, and you’ll find a good space that you wouldn’t have if you added a tab bar. And don’t be afraid of white space! If there are no other necessary things to show, don’t add things unnecessarily.
First impressions count
The AppStore, like Google play, has more than 750,000 applications, which means that a user will assess whether it’s worth it to use your application first – he has thousands to choose from! So you don’t only need a good looking design, but also direct and simple usability from the first use. Although your application does thousands of things easily, the most important to the user that it’s direct and quick. The use of tutorials in the application, while it’s not a bad thing per se, should not be abused because it could indicate that your application isn’t easy to use. Moreover, people don’t usually pay attention to the tutorials. Records on social networks or on your server often pull back many users, including myself, so not forcing them and motivating them isn’t necessary.
Simple and intuitive navigation
The mobile is a system that involves speed and immediacy, and your app should be the same. You should try to make your app work with the minimum possible steps. If making a purchase from your app, or see an article on your blog, using 2 steps instead of 3 will achieve a vast improvement. Try for the user having to enter the minimum data possible, as it’s not as comfortable to use a phone keyboard as a physical keyboard. Get away from infinite navigation, app flows that make the app open new screens to infinity, as it is a serious problem for the user to go back, let alone memory efficiency. And most importantly, get away from web design. PCs and phones are very different, so it’s important not to use the same navigation paradigm.
Every action has its reaction
Remember that for every action performed, feedback must be given to the user. If a user pushes a button, it should give the feeling of being tight. If a user does a search, inform him it’s being performed. If you don’t do that, it’s very likely that the user tries to push the button 20 times because they don’t know if they’ve done it already. And this brings us to another point that we often forget. Any tedious or costly action should never block the application. Use threads forever!
Extraball
A subtle trick, but very, very effective to give your application a sense of speed and usability, I found an impressive application in Instagram some time ago. "When an action requiring verification is carried out, it’s assumed it will succeed and be reported directly to the user." A practical example is given in the aforementioned Instagram. If you write a comment on a photo, it’s immediately output as added, making the entire process transparent to the user. Only if the process fails is the user informed that there was a problem, and the comment is removed from the list. I've seen this operation performed in many leading applications, from the application Instagram to Google+, and it’s really quite a smart tip, isn’t it? And these are the 5 keys to usability, but remember, don’t neglect the other feature of a great application: a good design and a great idea.