An application should be designed so that it anticipates the user’s next move. Especially on a mobile device so the user doesn’t have to do as much on a small screen.
The interface should communicate the status of any activity initiated by the user. This is especially important since you may have some time between requests and the user cannot easily tell if they’ve lost connection with a server.
The interface should communicate the status of any activity initiated by the user. True everywhere, but a good reminded.
The design of the application and its interface should optimize the user’s work efficiency, not the efficiency of the developer who designs and builds it or the client-server environment that executes it.
The interface (and the content it presents) should stay focused on the user task(s) at hand.
A vast library of reusable human interface objects has been developed for both Web and mobile Apps. Use them. Don’t reinvent the wheel to be “cool” or “new”.
An application interface should be designed to minimize learning time and, once learned, to minimize relearning required when the app is revisited.
An interface that uses an interaction metaphor is easier to learn and easier to use, as long as the metaphor is appropriate for the application and the user. – Once again, good for anywhere, but especially on the mobile/web side of development.
All information presented through the interface should be readable by young and old. Not all of your users will be 20 years old with 20/20 eyesight. Some might have old age, and have a hard time reading – bifocals are more and more common starting around 38 years of age, not just “grandpas”.
When appropriate, the state of the user interaction should be tracked and stored so that a user can logoff and return later to pick up where she left off. Think of things like a shopping cart that remembers where you where, or a sign up form, if it takes multiple pages – like when you apply for a job online.
WebApp and Mobile Interface Design was originally found on Access 2 Learn