View
215
Download
0
Tags:
Embed Size (px)
Citation preview
Why do people interact with or use Software?Accomplish a TaskMake Life Easier or More EfficientEntertainmentA Means to and End
A Means to an End
Find some fact or objectLearn somethingPerform a transactionControl or Monitor somethingCreate somethingConverse with other peopleEntertainment
Designing a Good User InterfaceStep #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 ClientWhy 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 WebsiteWhy does a user use a job website?◦An individual wants to find a job◦An employer wants to post a job/monitor job
postingsRequirements for a job seeker?Requirements for an employer?
Example: Pro Sports Team SiteWhat 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 ResearchEmpirical DataTarget 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 UsersTheir goals in using the software you designThe tasks they undertake in pursuit of those
goalsThe vocabulary and gestures they user to
describe what they are doingTheir general computer skillsTheir skill in using similar softwareTheir attitude towards what you are designingCultural or Language specific aspectsAppreciation of Visual Appeal vs. Functionality
How to Gain this UnderstandingTime and MoneyUser Research Methodologies◦Direct Observation◦Case Studies◦Surveys◦Personas
User Research: Direct Observation
Interviews (phone/live meeting or on site)
Structured or FreeformStrictly gather requirements or demo and
received feedbackPros?Cons?
User Research: Case StudiesDeep, detailed views into a small number
of users or user groups (Typically ~5)Grouped by some demographic (often
expertise)Longitudinal StudiesPros?Cons?
User Research: SurveysTypically email or software driven,
occasionally writtenStatistical SignificanceSurvey Design (Avoid Bias)Pros?Cons?
User Research: PersonasData utilization, not data gatheringTechnique 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 processPros?Cons?
User Research for a Software OrganizationUser research is a marketing activityMarketing user research goals != designer
user research goals◦Marketing wants to understand the buyer◦Designer/Developer wants to understand the
userIts typically up to someone on the
technical side of things to understand both audiences and exploit the differences
User Patterns in SoftwareSafe Exploration Instant GratificationSatisficingChanges in MidstreamDeferred Choices Incremental ConstructionHabituationSpatial MemoryProspective MemoryStreamlined RepetitionKeyboard OnlyOther 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 actionsGood 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 + SufficingPeople 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 thingExceptions?ReentranceExamples?
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 complexMake it easy to build small piecesMake the interface responsive to quick changesConstant Feedback loopGood tools allow natural flow, Bad tools distractExamples?
Habituation“That gesture works everywhere else, why
doesn’t it work here too?”Frequently used physical actions become
reflexiveGreat for power users, becomes mindlessConsistency 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, etcConsistency!Add Features – Don’t rearrangeConfigurable interfacesExamples?
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 futureCalendar, Sticky Notes, etcWhat type of artifacts should you support
if any?Don’t over engineer this conceptExamples?
Streamlined Repetition“I have to repeat this how many
times???”Narrow repetition down to one keystroke
per action, or group of actionsFind and Replace is a great example of
bothCan you allow this to be configured?Examples?
Keyboard Only“Please don’t make me user the mouse”Some users like the mouseSome user don’t like switchingSome users don’t like the mouse at allStandard Techniques:◦Shortcuts, Accelerators◦Selection from lists (Arrow, shift keys)◦Tab key for navigation◦Boolean changes through Return/Space◦Default button with focus