TEXTS:
Ben Shneiderman, Designing the User Interface, second edition, Addison-Wesley.
Alan Cooper, About Face: The Essentials of User Interface Design, IDG Books.
OBJECTIVE:
To explore the role of the human in the design and implementation of software. To prepare students to design and evaluate the quality of an interface between computer software and the human user. After completing this course, students should understand how to design a software interface that is appropriate for the user, be familiar with a variety of interface design strategies, and be able to evaluate the quality of a software interface.
CONTENT:
This course will focus on the software interface between the computer and the human. Concepts in human factors will be covered, specifically in terms of designing software interfaces. We will cover theories of human-computer interaction, including human cognitive limitations, syntactic versus semantic knowledge, transitionality, and the ``outside-in'' design approach. We will also study guidelines for designing computer interfaces of various models, including command interfaces, menus, desktop views, and GUI interfaces.
READING:
We will read from both Shneiderman and Cooper. The reading is not as technically deep as most CS/SWSE courses, so there should be no trouble reading the material before lecture. If students have trouble keeping up, I may begin class by asking for a short writeup of the current reading.
EXAMS:
There will be a midterm and a final exam, both in class.
MAKEUPS:
Unless arrangements are worked out in advance, missed quizzes and tests cannot be made up, and 5 points per week will be deducted for late homework and project submissions. I understand that your job may occasionally take you out of town; so does mine. If you are going to be forced to miss class on the day something is due, let me know ahead of time, in writing, preferably by email (this is for your protection, as I am somewhat forgetful).
EVALS:
Each student will evaluate six software interfaces from a human factors standpoint. During the course, I will offer several software interfaces to evaluate; you will choose which ones to evaluate.
PROJECT
Each student will implement a small project to build a user interface system. The projects can use any interface style (GUI, menus, command language, etc), can be developed for any underlying software, and you can implement in any language on any computer. More details on the project will be given the 2nd week of class.
GRADING:
Grades will be (approximately): 20% the evaluations, 25% the project, 25% the midterm, and 30% the final.
Jeff Offutt