Topics covered:

  • Direct Manipulation
  • Human Abilities
  • Design Principles and Heuristics
  • Mental Models and Representations
  • Task Analysis
  • Distributed Cognition
  • Interfaces and Politics
  • Conclusion to Principles
  • Intro to Methods
  • Ethics and Human Research
  • Needfinding and Requirements Gathering

Direct Manipulation

  • UI disappears - invisible interfaces is the ultimate goal
  • desktop metaphor - moving files and folders
  • Direct Manipulation of Interfaces paper
    • Distance: feeling of directness is inversely proportional to the amount of cognitive effort it takes to manipulate and evlauate a system
      • semantic distance - how hard is it to know what to do
      • articulatory distance - how hard it is to actually do the thing
      • both span gulf of execution and evluation - see circle diagram
    • Direct engagement - give the feeling that one is directly in control of the object of our goals and intentions
  • making indirect manipulation direct - use animation to mimic the action - so design interfaces that mimic the interactions that feel more direct
  • invisibility by learning happens - but constrained by time taken by users to learn it
  • when you do it right - people wont be aware you’ve done anything at all
  • 5 tips:
    • use affordances - visual design to suggest how it should be used - dials for turning
    • know your user
    • differentiate your user - beginner vs expert - multiple ways to do a task eg copy buton vs ctrl c
    • let your interface teach - show the hotkey next to the funciton
    • talk to your user - ask what they’re thinking
  • up/down in video games - portal 2 learning up/down without settings

Human Abilities

  • Input, processing, output

(skipped for now)


Design Principles

  • Four sets of dseign principles
    • Don Norman 6 principles
    • Ten design heuristics
    • Software for use
    • Seven principles of universal design (accessibility)
  • Discoverability
    • make options visible? - deliver instructions in context or in a log
  • Simplicity
    • no extra info (nielsen)
    • make common tasks easy, using user’s own language, providing good shortcuts (lockwood)
    • regardless of xp, knowledge, language skills (mace)
  • Affordances
    • design + simple = by their very design it tells you how to use them
    • button hover style crease a raise to indicate it is clickable
    • visualize the space of options in a color picker
    • signifiers are in context instructions like arrow or menu buttons consistent with others
    • vocabulary: affordance vs perceived affordance vs signifier
  • Mapping
    • strong mappings help info appear in logical natural order
    • eg mapping of display on monitors
  • Perceptibility
    • feedback within reasonable time
    • light switch up down vs fan chain
  • Consistency
    • lessons learned in systems are transferable, follow platform conventions. reuse components and behaviors.
    • they may sometimes conflict (ctrl Y)
  • Feedback
    • accelerators (hotkeys) - users tailor frequent actions
    • design accomodates wide range of individual prefs and abilities
    • Nielsen: plain language (no codes), precisely indicate the problem, constructively suggest a solution
    • Norman: Feedback must be immediate, informative
    • Constantine: Keep users informed of actions, changes of state, and errors, through clear, concise, unambiguous language
  • Equity
    • appears to clash with flexibility
    • same experience but flexible?
  • Ease and Comfort
    • appropriate size and space for manipulation regardless of posture or mobility
    • can be used efficiently with a minimum fatigue
  • Structure
    • organize in meaningful ways - help mental model map to task
  • Constraints
    • no such thing as user error!
    • constrain users to only perform actions in the first place
    • careful design prevents problem from occurring in the first place. use confirmation?
    • norman 4 constraints
      • physical - eg 3 prong plug
      • cultural - eg forming a line while waiting
      • semantic - eg rearview mirror
      • logical - self evident based on situation eg assembling furntiture and putting screws in holes
    • being more visible rather than invisible in order to help.
  • Tolerance
    • undo and redo - recoverability
    • minimize adverse consequences
    • a computer shall not harm your work, or through inactivity, allow your work to come to harm
  • Flexibility
  • Documentation
    • may be necessary to provide help and documentation
    • better: framed in terms of tasks instead of listing out entire api
  • other sets of principles
    • pereptibility, tolerance and feedback have some variances to take note of
    • conceptual models is norman’s 7th principle
    • hci
      • learniability
      • flexibility
      • robustness
    • reducing cog load
    • humane interface
    • computer graphics p

Human-Computer Interaction by Dix, Finlay, Abowd, & Beale: https://smile.amazon.com/Human-Computer-Interaction-3rd-Alan-Dix/dp/0130461091/ref=sr_1_1?ie=UTF8&qid=1472593139&sr=8-1&keywords=human-computer+interaction+dix

Cognitive Engineering Principles for Enhancing Human-Computer Performance: http://www.tandfonline.com/doi/abs/10.1080/10447319609526147

The Humane Interface: https://smile.amazon.com/Humane-Interface-Directions-Designing-Interactive/dp/0201379376/ref=sr_1_1?ie=UTF8&qid=1472593205&sr=8-1&keywords=the+humane+interface

Computer Graphics: Principles and Practice: https://smile.amazon.com/Computer-Graphics-Principles-Practice-3rd/dp/0321399528/ref=sr_1_1?ie=UTF8&qid=1472593229&sr=8-1&keywords=computer+graphics+principles+and+practice+3rd+edition

Designing Effective Speech Interfaces: https://smile.amazon.com/Designing-Effective-Speech-Interfaces-Weinschenk/dp/0471375454/ref=sr_1_1?ie=UTF8&qid=1472593267&sr=8-1&keywords=designing+effective+speech+interfaces

Designing the User Interface: Strategies for Effective Human-Computer Interaction: https://smile.amazon.com/Designing-User-Interface-Human-Computer-Interaction/dp/013438038X/ref=sr_1_1?ie=UTF8&qid=1472593373&sr=8-1&keywords=Designing+the+User++Interface+Interface

An Introduction to Human Factors Engineering https://smile.amazon.com/Introduction-Human-Factors-Engineering/dp/8120343719/ref=sr_1_1?ie=UTF8&qid=1472593456&sr=8-1&keywords=An+Introduction+to+Human+Factors+Engineering


Mental Models and Representations


Task Analysis


Distributed Cognition


Interfaces and Politics


Ethics and Human Research


Needfinding and Requirements Gather

  • try to avoid preconceived notions
    • defining questions about user
    • generating answers about user
    • formalizing methods about users
  • Data Inventory
    • who are the users?
    • where are the users?
    • what is the context of the task?
    • what are their goals?
    • right now, what do they need?
    • what are their tasks?
    • what are their subtasks?
  • Problem Space
    • not just the interface itself, but also the entire context in which it is being used (eg holding babyu)
  • User Types
    • Kids vs Adults
    • Experts vs Novices
  • 5 Bias in needfinding
    • Confirmation bias - look for being wrong, testing empirically, involving multiple observers
    • observer bias - scripting your interactions with users and having someone else review yoru survey for leading questions
    • social desirability bias - hide what the social response is, more naturalistic observations
    • voluntary response bias - oversampling more extreme views - confirm conclusions with other methods
    • recall bias - people dont recall what they did or how they felt - conducting interviews during activity
  • naturalistic observation
    • take notes
    • start specific and then abstract
    • spread out your sessions
    • find a partner, compare notes
    • look for questions
  • participant observation
    • you are not your user
  • hacks and workarounds
    • look at hacks users currently use
    • eg post it notes on computer with 6 screens. why dont they use the existing apps?
  • errors
    • errors - where nothing wrong with mental model, they just made a problem
    • mistakes - where mental model is weak
    • hacks and errors are conscious - can just interview them
    • apprenticeship approach - train to become users
  • ethnography and apprenticeship
    • train under them, video recording themselves
  • interviews
    • 6 w’s: who what when where how - avoid yes/no qtns that can go to a survey
    • be aware of bias - including smiling when they agree with you
    • listen - dont have a conversation
    • organize the interview
    • practice
  • think aloud
    • think out loud while doing the thing - different from interviews
    • avoid forgetting while no longer in the task
    • but is more cognitive
    • post event protocol is better?
  • surveys
    • broader data
    • 5 tips
      • less is more
      • be aware of bias, phrasing
      • tie them to inventory
      • test it out
      • iterate
  • good survey qtns
    • clear - assign words to number scales. timebox frequency
    • concise - plain language pls
    • specific - dont ask questions on big ideas, or double barrel qtn.
    • expressive - give levels of frequency or agreement, allow multiple qtns, add nominal categories
    • unbiased - leave potentially open ended qtns open, dont lead or load qtns
    • usable - progress bar, page lengths consistent, order your questions logically
  • other data gathering
    • data logs
  • iterative needfinding: interaction between the few different methods
  • revisit the initial questions up top
  • represent the need - step by step of the tasks - at operator level or a network or strugtural diagram to get data back. to get to flowchart of decision making points