Principles and Prototype Testing - Midterm Flashcards
5 Quality Factors: List
- learnability
- efficiency
- errors
- satisfaction
- memorability
Learnability
How quickly you can pick it up
Efficiency - Nielsen
How quickly can you perform tasks after learning
Memorability
How easy is it to come back to the language after some time away
Errors
How many errors do users make, how severe are they, and how quickly can they recover
Satisfaction
Combination of other factors
Efficiency - Louden
translation efficiency, optimizability, execution efficiency, implementability, writability, maintainability
Regularity
Are there “gotchas” - something that seems like it should work, but doesn’t. Generality: can you do everything to everything? Orthogonality: do things work the same everywhere? Can you do something everywhere? Uniformity: how similar do things look?
Security
Security from bad programming - how easy is it to mess stuff up, and how severe are those errors
Simplicity
Is very vague, but seems important.
Abstraction
Whenever there is repetition, solve with abstraction. Provide programmers ability to abstract their own code where possible.
Examples of Abstraction
Variables
Subroutines
Loops
User Testing Steps
- Show examples
- Give task written down
- Ask them to perform task given examples
- Ask them to think aloud
Interpreting user reactions
- Don’t take suggestions
- Use confusion to identify which principle was being violated
- What errors were made and were they show-stopping