Visibility
Show system status, tell what’s happening
Mapping
Use familiar metaphors & language
Freedom
Provide good defaults & undo
Consistency
Use same interface and language throughout
Error Prevention
Help users avoid making mistakes
Recognition
Make information easy to discover
Flexibility
Make advanced tasks fluid and efficient
Minimalism
Provide only necessary information in an elegant way
Error Recovery
Help users recognize, diagonize and recover from errors
Help
Use proactive and in-place hints to guide users