Introduction - Montana State University
Download
Report
Transcript Introduction - Montana State University
Introduction
September 2nd, 2009
Accomplish a Task
Make Life Easier or More Efficient
Entertainment
A Means to and End
A Means to an End
Find some fact or object
Learn something
Perform a transaction
Control or Monitor something
Create something
Converse with other people
Entertainment
Designing a Good User Interface
Step #1: Understand your users
◦ What are they like/personality
characteristics?
◦ Why do they use your software?
◦ How with they interact with your software?
“Software in a means to an end for the
people who use it. The better you satisfy
those end, the happier those users with
be.”
Primary Task of a UI Designer
Script/Design/Design the terms of an user’s
interaction with the software
Your considerations:
◦ What are the user’s motives and intentions?
◦ What words, icons, gestures does the user expect
to use?
◦ How can the application set appropriate
expectations for the user?
◦ Finally, how do the user and machine end up
communicating meaning to each other?
Again, to answer these questions correctly,
you must understand your user
Example: Email Client
Why does a user use an email client?
◦ To send/receive email.
Why does the user email?
◦ To engage in conversation.
◦ Could this be meet by other means?
What other requirements exist?
◦
◦
◦
◦
Archiving
Privacy
Culture
Others?
Example: Job Website
Why does a user use a job website?
◦ An individual wants to find a job
◦ An employer wants to post a job/monitor job
postings
Requirements for a job seeker?
Requirements for an employer?
Example: Pro Sports Team Site
What does a user go to this site?
◦
◦
◦
◦
◦
Team Information (Roster, Bio’s, Stats, etc)
Game Times
Purchase Tickets
Purchase Memorabilia
View Highlights
Requirements?
How do the user base and site goals
conflict/differ?
User Research
Empirical Data
Target Audiences (Narrow or General)
Target Groups (Which demographics to
target)
Summary
◦ Audience: Who you want to use the software
◦ User Groups: Which types of groups can those
users be categorized into
Understanding Your Users
Their goals in using the software you design
The tasks they undertake in pursuit of those goals
The vocabulary and gestures they user to
describe what they are doing
Their general computer skills
Their skill in using similar software
Their attitude towards what you are designing
Cultural or Language specific aspects
Appreciation of Visual Appeal vs. Functionality
How to Gain this Understanding
Time and Money
User Research Methodologies
◦
◦
◦
◦
Direct Observation
Case Studies
Surveys
Personas
User Research: Direct Observation
Interviews (phone/live meeting or on site)
Structured or Freeform
Strictly gather requirements or demo and
received feedback
Pros?
Cons?
User Research: Case Studies
Deep, detailed views into a small number
of users or user groups (Typically ~5)
Grouped by some demographic (often
expertise)
Longitudinal Studies
Pros?
Cons?
User Research: Surveys
Typically email or software driven,
occasionally written
Statistical Significance
Survey Design (Avoid Bias)
Pros?
Cons?
User Research: Personas
Data utilization, not data gathering
Technique Models the target audiences
through fictional characters
◦ What they are trying to accomplish
◦ Final Goals
◦ Experience level in the subject domain
Helps the design thinking process
Pros?
Cons?
User Research for a Software
Organization
User research is a marketing activity
Marketing user research goals != designer
user research goals
◦ Marketing wants to understand the buyer
◦ Designer/Developer wants to understand the
user
Its typically up to someone on the
technical side of things to understand
both audiences and exploit the
differences
User Patterns in Software
Safe Exploration
Instant Gratification
Satisficing
Changes in Midstream
Deferred Choices
Incremental Construction
Habituation
Spatial Memory
Prospective Memory
Streamlined Repetition
Keyboard Only
Other Peoples Advice
Safe Exploration
“Let me explore without getting lost or
getting into trouble”
If user feels they can explore and interface
without dire consequences they are likely to
learn more.
The consequences can be as minor as an
annoyance (Dismissing popups, re-entering
data, loud sounds, etc)
Good software allows people to try
something unfamiliar, back out, and try
something else – with ease.
Examples?
Instant Gratification
“I want to accomplish something now, not
later”
Human nature is to expect immediate
results from actions
Good software may allow a user to get a
quick “success experience” within the
first few seconds. The will more likely to
keep using it and learn more – even if it
gets harder.
Examples?
Satisficing
“This is good enough. I don’t want to spend more
time learning to do it better.”
Users do not methodical inspect a new user interface,
they scan and try – trial and error.
Satisficing = Satisfying + Sufficing
People are willing to accept good enough instead of
the best if the learning cost is lower.
Considerations
◦
◦
◦
◦
Short, Concise labels
Use the layout to communicate meaning
Safe Exploration
Visually complicated = Large Cognitive load
Examples?
Changes in Midstream
“I changed my mind about what I was
doing”
Don’t look users into a specific path,
global navigation is typically a good thing
Exceptions?
Reentrance
Examples?
Deferred Choices
“I don’t want to answer that now, just let me
finish”
Originates from a desire for instant gratification.
A user don’t want to be annoyed with a
“meaningless” question when they are trying to
accomplish a task
Considerations:
◦
◦
◦
◦
◦
Avoid many upfront choices/questions
Clearly mark required fields
Basic and Advanced options
Good Defaults
Allow returning to deferred items later
Examples?
Incremental Construction
“Let me change this. That doesn’t look right;
let me change it again”
People don’t often create things all at once,
especially if it’s complex
Make it easy to build small pieces
Make the interface responsive to quick
changes
Constant Feedback loop
Good tools allow natural flow, Bad tools
distract
Examples?
Habituation
“That gesture works everywhere else, why
doesn’t it work here too?”
Frequently used physical actions become
reflexive
Great for power users, becomes mindless
Consistency across applications is
paramount!
Consider default actions on items that can
be dismissed, what though process are you
causing?
Examples?
Spatial Memory
“I swear that button was here a minute
ago… Where did it go?”
People more often remember
(conceptualize) the location of commands by
location rather than by name
Consider that desktop, My Documents, etc
Consistency!
Add Features – Don’t rearrange
Configurable interfaces
Examples?
Prospective Memory
“I’m putting this here to remind myself to
deal with it later”
We arrange our lives/activities/actions to
help us plan for things in the future
Calendar, Sticky Notes, etc
What type of artifacts should you support
if any?
Don’t over engineer this concept
Examples?
Streamlined Repetition
“I have to repeat this how many
times???”
Narrow repetition down to one keystroke
per action, or group of actions
Find and Replace is a great example of
both
Can you allow this to be configured?
Examples?
Keyboard Only
“Please don’t make me user the mouse”
Some users like the mouse
Some user don’t like switching
Some users don’t like the mouse at all
Standard Techniques:
◦
◦
◦
◦
◦
Shortcuts, Accelerators
Selection from lists (Arrow, shift keys)
Tab key for navigation
Boolean changes through Return/Space
Default button with focus
Other People’s Advice
“What did someone else say about this?”
Social cultures = Influenced by our peers
Amazon – User comments
Ebay – Prices
Search Engines
Programming Contests
Does this make sense for your
application?
Other Examples?