Understand your customer / target user
“Understand” means truly having the ability to see the application through their eyes… what do they like, what don’t they like, what sorts of things do they do on the app and why? I cannot overstress the importance of this… there have been thousands of beautiful and creative apps built that have simply failed because the designers did not really understand the target user.
Pay attention to the details of design
The most successful mobile applications inevitably have a beautiful design. They are simple yet elegant and provide the end users with a robust set of options and capabilities that are intuitive and easy to use and at the same time look amazing.
It has to work
Nothing is more frustrating than applications that are slow, they crash, they have links that go nowhere, or they have bugs that make certain functions fail, etc. No matter how perfect you have the design and understand your customer, if the app doesn’t work flawlessly you will not be as successful as you could be.