Building consistent user interface
If anything, the need for quality interface has only increased. The modern world is a very distracting environment. We humans like to feel that we're in control, and we also have certain patterns of behavior that are pretty much common to all of us. When interface is designed in a way that doesn't understand these patterns, it stands a good chance of being rejected in user acceptance testing.
This sort of problem can be avoided by keeping users consistently informed as to what the system is doing and by not requiring a user to follow confusing pathways or be confronted with the unexpected. One way to achieve this is to ensure that a given screen supports a particular action that is valuable to the person using the application. This has several advantages, it makes the interface easier to use, easier to add to when required and easier to learn.
Secondary actions should stay secondary. They should be slightly more in the background of the interface, still accessible but not as front and center as the primary action. Or, they can be shown only when the primary action is complete.
Think of an interface as a way of supporting a conversation between the user and the application. There is a give and take and the next step on the user’s path should be open and easily accessible. This will create a sense of familiarity. One way of increasing familiarity is to present people with what they expect. Interface elements should look and behave like material objects in the real world, at least as much as possible. An arrow should point to somewhere and a button should act like a button.
Ideally, the best interface should be intuitive and should respond to common human gestures. It should also behave in ways that humans find the most comfortable and easy to learn. We create user interface to manipulate a virtual world, the key to making an interface successful is to make it consistently correspond to reality.