Features of a Good User Interface
- Commands should be easy to learn.
- Allow the user to change his/her mind.
- The interface should be predictable.
- There should be fast short-cuts for more experienced users.
- The interface should prevent user errors.
- You should be able to safely quit at any time.
- Error messages should be helpful.
- There should be on-line help and "wizards" to help with complex tasks.
- The interface should be fun, not intimidating.
- The program should be "robust" (hard to crash).
- The program should offer immediate gratification.(Ted Nelson)
- Difficult tasks should be retroactively obvious.(Ted Nelson)
For the first 5 features, see Patterson, et al. Computing Unbound
. Norton, 1989, pp. 89-96.