Jakob Nielsen published his set of ten usability heuristics in 1995.  They are as relevant now as they were then.  Presented here without additional comment.

1. Visibility of system status

2. Match between system and real world

3. User control and freedom

4. Consistency and standards

5. Error prevention

6. Recognition rather than recall

7. Flexibility and efficiency of use

8. Aesthetic and minimalist design

9. Help users recognize, diagnose and recover from errors

10. Help and documentation


Source: http://www.nngroup.com/articles/ten-usability-heuristics