29
Introduction September 2 nd , 2009

Introduction September 2 nd, 2009. Accomplish a Task Make Life Easier or More Efficient Entertainment A Means to and End

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

IntroductionSeptember 2nd, 2009

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

Other People’s Advice“What did someone else say about this?”Social cultures = Influenced by our peersAmazon – User commentsEbay – PricesSearch EnginesProgramming ContestsDoes this make sense for your application?Other Examples?