User Centred Design
Contents
TL;DR
We write software to be USED by people, not for machines to use.
Therefore we need to write software in a way that is intuitive and makes sense to humans!
Usability Heuristics
- Visibility of system status - Can easily see what's going on
- Match between system and real world - Names and data structures can easily be identified
- User control and freedom - Options
- Consistency and standards - memes
- Error prevention - A mistake does not 'penalise' the user
- Recognition rather than recall - Users should be able to navigate their way around the system, rather than remember a set of procedures
- Flexibility and efficiency of use - Options x2
- Aesthetic and minimalist design - Keep it simple!
- Help users recognise, diagnose, recover from errors - Useful info-tips and tool-tips
- Help and documentation