CMPUT 301: Lecture 01 Introduction Lecturer: Martin
26 Slides797.50 KB
CMPUT 301: Lecture 01 Introduction Lecturer: Martin Jagersand Department of Computing Science University of Alberta Notes based on previous courses by Ken Wong, Eleni Stroulia Zach Dodds, Martin Jagersand
HCI and program design Why worry about the user? 1. People “more expensive” than machines 2. Errors may be unacceptable 3. Can’t sell unattractive and hard to learn SW Design 1. For the user: Useful, correct, complete, efficient 2. For the programmer: Portable, changeable, extensible, reusable 2
Course content: How to do User Interfaces Object Oriented SW eng: – Learn the programming skills The human: – What perceptual skills support what interaction? Design and evaluation: – Task analysis, usability, evaluation 3
Example: Interaction and interfaces: The past? – Text based interaction: If A then end 4
The present: Direct manipulation: xfig drawing program Icons afford use Results visible Direct spatial actionresult mapping matlab drawing: line([10, 20],[30, 85]); patch([35, 22],[15, 35], C); % C complex structure text(70,30,'Kalle'); % Potentially add font, size, etc 5
The future? Vision and Touch UI Observe and Interpret Physical Interactions Make Machines work with Humans Soon most appliances will have embedded computers 6
Motivation Clint Eastwood classification: – the good – the bad – the ugly 7
Motivation The good: 8
Motivation The bad: 9
Motivation The ugly: 10
Question What are some other examples? In the real world? 11
Why Design? “Despite the enormous outward success of personal computers, the daily experience of using computers far too often is still fraught with difficulty, pain, and barriers for most people.” 12
Why Design? “The lack of usability of software and the poor design of programs are the secret shame of the industry.” — Mitch Kapor 13
Why Design? There’s more to developing software than just making it work correctly. 14
Why Design? 15
Software Design User perspective: – – – – – – – meets needs increase user satisfaction reduce frustration increase productivity reduce errors easy to learn easy to use 16
Software Design Developer perspective: – – – – – – manage complexity reduce maintenance and support costs increase quality reduce defects increase reuse reduce time-to-market 17
Software Design Selected goals: – bridging users and technology effectively – marry art and science – evolutionary development (design, implement, evaluate) – integrate expertise across disciplines 18
Multiple Disciplines industrial design graphic design architecture ergonomics cognitive psychology sociology anthropology ethics software engineering computer science visualization experimentation intellectual property arts business 19
Software Design Think about the user. Focus on goals and tasks. Try it out on the users. Involve the users. Iterate. 20
Book: “Human-Computer Interaction” by Alan Dix, Janet Finlay, Gregory Abowd, and Russell Beale, Prentice-Hall, 1998 http://www.hcibook.com/hcibook/ 21
Instructor: Martin Jagersand Office: Athabasca Hall 401 Office Hours: By appointment E-mail: [email protected] Phone: 780 492 5496 22
Staying in Touch WWW page: http://ugweb.cs.ualberta.ca/ c301/ Newsgroup: ualberta.courses.cmput.301 Emails: 1. Your section TA, e.g. ayman, trysi etc 2. [email protected] 23
Project Complex – Components – Integration (early!) Vague – Talk to users – Evolution Team effort – Hold regular meetings – Assign tasks – Peer reviews 24
Grading Assignments: 15% Midterm Exam: 15% Project Parts: 40% Final Exam: 30% Note: All assignments and project parts are due on a Monday at 12 noon. The TAs will explain the submission process in the labs. Late submissions will not be accepted. 25
End What did I learn today? What questions do I still have? 26