Skip to content

Instantly share code, notes, and snippets.

@brogand93
Last active January 4, 2016 00:09
Show Gist options
  • Save brogand93/d1c6a8ede21fa13ab225 to your computer and use it in GitHub Desktop.
Save brogand93/d1c6a8ede21fa13ab225 to your computer and use it in GitHub Desktop.

Inputs

Classes of user interfaces

Command Language

Advantages
  • Can carry out a lot of tasks fast
  • Experienced users generally prefer it
  • Some stuff that can be done in command language is difficult to reproduce in a GUI
Disadvantages
  • Difficult to learn
  • Generally doesn't have instanst feedback, e.g delete a file using rm filename how do we know it has removed the file?
  • Mistakes are more common
  • User has to know the commands which can be complex

Natural Language

Advantages
  • Easy to learn
  • Sophisticated
  • User is used to communicating in this form
Disadvantages
  • Difficult to program
  • Lot of typing on user's part generally (slow)
  • Computer not guaranteed to understand the way user is expressing what they wish to do (unclear)

Menu Systems

Advantages
  • Good for selecting choices
  • Generally easy to understand
  • System has no trouble understanding choices
  • Easy to learn
Disadvantages
  • Can be restrictive, may not offer all actions user wishes to perform
  • More suited to novice users

Form filling dialogues

Advantages
  • Makes data entry easy
  • Programmer can hint at what they wish an input to look like
  • Good for reading in bulk user info
Disadvantages
  • Generally has to be designed specifically for a particular system

GUIs / Direct manipulation interfaces

Advantages
  • Very easy to learn
  • User gets feedback instantly
  • Represent tasks metaphorically
Disadvantages
  • Difficult to design
  • In some cases it can be restrictive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment