Best Practices & Principles for GUI design [closed

2019-01-12 13:23发布

What is your best practical user-friendly user-interface design or principle?

Please submit those practices that you find actually makes things really useful - no matter what - if it works for your users, share it!


Summary/Collation

Principles

  1. KISS.
  2. Be clear and specific in what an option will achieve: for example, use verbs that indicate the action that will follow on a choice (see: Impl. 1).
  3. Use obvious default actions appropriate to what the user needs/wants to achieve.
  4. Fit the appearance and behavior of the UI to the environment/process/audience: stand-alone application, web-page, portable, scientific analysis, flash-game, professionals/children, ...
  5. Reduce the learning curve of a new user.
  6. Rather than disabling or hiding options, consider giving a helpful message where the user can have alternatives, but only where those alternatives exist. If no alternatives are available, its better to disable the option - which visually then states that the option is not available - do not hide the unavailable options, rather explain in a mouse-over popup why it is disabled.
  7. Stay consistent and conform to practices, and placement of controls, as is implemented in widely-used successful applications.
  8. Lead the expectations of the user and let your program behave according to those expectations.
  9. Stick to the vocabulary and knowledge of the user and do not use programmer/implementation terminology.
  10. Follow basic design principles: contrast (obviousness), repetition (consistency), alignment (appearance), and proximity (grouping).

Implementation

  1. (See answer by paiNie) "Try to use verbs in your dialog boxes."
  2. Allow/implement undo and redo.

References

  1. Windows Vista User Experience Guidelines [http://msdn.microsoft.com/en-us/library/aa511258.aspx]
  2. Dutch websites - "Drempelvrij" guidelines [http://www.drempelvrij.nl/richtlijnen]
  3. Web Content Accessibility Guidelines (WCAG 1.0) [http://www.w3.org/TR/WCAG10/]
  4. Consistence [http://www.amazon.com/Design-Everyday-Things-Donald-Norman/dp/0385267746]
  5. Don't make me Think [http://www.amazon.com/Dont-Make-Me-Think-Usability/dp/0321344758/ref=pdbbssr_1?ie=UTF8&s=books&qid=1221726383&sr=8-1]
  6. Be powerful and simple [http://msdn.microsoft.com/en-us/library/aa511332.aspx]
  7. Gestalt design laws [http://www.squidoo.com/gestaltlaws]

19条回答
老娘就宠你
2楼-- · 2019-01-12 14:25

I've read most of the above and one thing that I'm not seeing mentioned:

If users are meant to use the interface ONCE, showing only what they need to use if possible is great.

If the user interface is going to be used repeatedly by the same user, but maybe not very often, disabling controls is better than hiding them: the user interface changing and hidden features not being obvious (or remembered) by an occasional user is frustrating to the user.

If the user interface is going to be used VERY REGULARLY by the same user (and there is not a lot of turnover in the job i.e. not a lot of new users coming online all the time) disabling controls is absolutely helpful and the user will become accustomed to the reasons why things happen but preventing them from using controls accidentally in improper contexts appreciated and prevents errors.

Just my opinion, but it all goes back to understanding your user profile, not just what a single user session might entail.

查看更多
登录 后发表回答