Page ‹#› 1 CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 1: Interfaces & Users CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 2 Welcome! • About me – Dario Salvucci, Assistant Professor, CS – Email: [email protected]– Office: University Crossings 142 – Office hours: Thursday 11-12, or email for appt. • About this course – Syllabus, timeline, & resources on-line... http://www.cs.drexel.edu/~salvucci/courses/cs338-w07/ CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 3 Who / what / where / when / why / how • Prerequisites • Lectures • Readings • Assignments • Exams • Grading • Communication • Policies • Questions? CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 4 What’s a G raphical U ser I nterface? • In the narrow sense... – a graphical information channel between a user and computer system/application • e.g., most Windows & Mac applications – any interface with buttons, menus, etc (“widgets”) • In the broader sense... – ATMs, cell phones, navigation devices, etc. – GUIs don’t have to have standard widgets! – GUIs don’t have to be on your desktop! • This course focuses on the first group, but we’ll keep the second group in mind
8
Embed
Pageumpeysak/Classes/GUI/... · Constantly Running Animations 4. Complex URLs 5. Orphan Pages 6. Long Scrolling Pages 7. Lack of Navigation Support 8. Non-Standard Link Colors 9.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page ‹#›
1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University.
Lecture 1:Interfaces & Users
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 2
Welcome!
• About me– Dario Salvucci, Assistant Professor, CS– Email: [email protected]– Office: University Crossings 142– Office hours: Thursday 11-12, or email for appt.
• About this course– Syllabus, timeline, & resources on-line...
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 4
What’s a Graphical User Interface?
• In the narrow sense...– a graphical information channel between a user
and computer system/application• e.g., most Windows & Mac applications
– any interface with buttons, menus, etc (“widgets”)
• In the broader sense...– ATMs, cell phones, navigation devices, etc.– GUIs don’t have to have standard widgets!– GUIs don’t have to be on your desktop!
• This course focuses on the first group,but we’ll keep the second group in mind
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 5
Why GUIs?
• Can present a lot of information in smallarea but still maintain readability
• Can present different types of information(e.g., pictures, animations)
• Can store “functions” on-screen withoutforcing user to remember them
• Can provide “direct-manipulation”interfaces with various input
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 6
The GUI Life Cycle
Design
Prototype
Evaluate
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 7
Focus of this course
DesignPrototype
Evaluate
DesignPrototype
Evaluate
CS 337: Psych HCI
DesignPrototype
Evaluate
CS 338: GUI
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 8
To set the stage...
• Some problems with GUIs today:– software is “rude”
• e.g., inappropriateor derogatoryerror messages
– software makes unwarranted assumptions• e.g., assumes user knows underlying mechanisms,
such as saving to a hard drive
– software is obscure• “Use passive mode on FTP proxy?”
– software exhibits inappropriate behavior• open Word document, print it, close it — “Save?”
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 9
To set the stage...
• Why do we have these problems?– we have a conflict of interest
• for whom exactly are we developing the system?
– we lack a process• how can we think like engineers to evaluate user needs
and develop appropriate, usable systems?• one simple, common, but not-so-good process:
Research(market,
technical)
Design(graphic,
interaction)
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 10
Thanks to Scott MacKenzie @ York U for this graph!
To set the stage...
• But most importantly...– we’re ignorant about users!
UserPopulation
Assembler code0.01%
Program (anylanguage)1%
C++ code0.1%
Linux15%
Usability
MS Windows70%
Television98%
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 11
Developing GUI (or any) software
• Cooper’s 5-component process:
• Anything missing from this picture?
Researchusers &
the domain
Modelingusers &
use contexts
Requirementsuser, business, &technical needs
Frameworkstructure
& flow
Refinementof behavior,
form, context
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 12
Multidisciplinary nature of GUI & HCI
• Human side:– cognitive psychology– ergonomics and human factors– sociology and anthropology– linguistics– communication theory– social and organizational psychology– graphic and industrial design
Thanks to Scott MacKenzie @York U for the next 2 slides!!
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 13
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 14
Users, users, users
• Today we’ll focus on the “human side.”Soon we’ll deal with the “machine side.”
• How can we possibly deal with all thecomplexity of the human side of GUIs?– one short answer: It’s hard.– one long answer: See CS 337.– our short answer: KEEP THE USER IN MIND!
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 15
• Users embody all aspects of being human• Being human means having limitations:
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 16
Users at a higher level
• Users have goals in using our GUIs• User-centered design involves...
– goals: what is the user trying to accomplish?– needs: what does the user need to do this?– user constraints: what can/can’t the user do?– task constraints: what can/can’t be done?– and lots of other things to consider
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 17
Example: Web site design
• Jakob Nielsen's“Top Ten Mistakes in Web Design”
• Is good design really this easy?• These are really just heuristics that
keep the user in mind!
1. Using Frames2. Gratuitous Use of Bleeding-Edge Technology3. Scrolling Text, Marquees, and Constantly Running Animations4. Complex URLs
5. Orphan Pages6. Long Scrolling Pages7. Lack of Navigation Support8. Non-Standard Link Colors9. Outdated Information10. Overly Long Download Times
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 18
Research Question of the Day
• When people surf the web, they have goals.– the goals might be very specific
• e.g., find a paper
– the goals might be very general• e.g., find a cool news article or on-line game
• For typical web browsing, what are users’goals and how common are these goals?
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 19
Byrne, M. D., John, B. E., Wehrle, N. S., & Crow, D. C. (1999). The tangled web we wove:A taskonomy of WWW use. Human Factors in Computing Systems: Proceedings of CHI 99,544-551. Reading, MA: Addison Wesley.
Research Question of the Day
• Byrne et al. (1999) created a “taskonomy”of web browsing– take users from a diverse population– observe them in a natural environment– analyze their verbal protocols & extract goals
• And at the same time...– perform a task analysis of web browsing– create categories & subcategories of goals
• e.g., locate word, image, something interesting...
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 20
Research Question of the Day
• Byrne et al. (1999) defined 6 tasks:– use information: read, listen, view, download, ...– locate: visual search– go to: display a new URL– provide information: username, address, ...– configure: change state of browser– react: respond to browser-initiated events
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 21
Research Question of the Day
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 22
Research Question of the Day
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 23
“Most users are neitherbeginners nor experts;
they are intermediates.”beginner intermediate expert
Optimizing for intermediates
• Cooper uses a “bell curve” argument:
• He thus argues that we should“optimize for intermediates”
• Is this always the case?– for what systems does this make sense?– for what systems doesn’t this make sense?
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 24
Dealing with beginners, experts
• Let’s not forget the others!• Beginners need...
– straightforward “mental model”– good, concise topical help (need not be long!)
• Experts need...– lots o’ shortcuts– directed, specific, unintrusive help
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 25
Personas
• One system won’t make everyone happy
Alesandro’s goals– Go fast– Have fun
Marge’s goals– Be safe– Be comfortable
Dale’s goals– Haul big loads– Be reliable
???
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 26
Personas
• How do we develop personas? Research.– user interviews– subject-matter experts– market research surveys– etc.
• End production: Each persona represents aclass of users in context– persona is not an “average person”, but an
exemplar or “canonical person” with anassociated range of behaviors
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 27
Exercise: CS Web Site
• Check out the web site on the next page• What’s your gut reaction?
– yikes, ugly– yikes, cool– just fine– yawn
• Ok, that’s out of your system.Now let’s think about our users...
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 28
Page ‹#›
CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 29 CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. 30