[ Catalog Description | Rationale | Objectives | Course Outline | Evaluation Criteria | Suggested Texts | Related Readings | Periodicals | Gen Ed Credit | Resources | Labs ]
PREREQUISITES: CSCI 362 Required; CSCI 380 Recommended
This area is becoming a vital part of computer science, as professionals strive to design systems that allow for efficient and comfortable interaction between computers and their users. Researchers have shown that redesign of the human-computer interface can make a substantial difference in learning time, performance speed, error rates, and user satisfaction. Programmers and quality assurance teams are becoming more cautious and paying greater attention to implementation issues that guarantee high quality user interfaces. Today, it is no longer sufficient for a software product to have functionality. It must also have usability, as demonstrated by a soundly designed user interface.
Projected Enrollment.
All Computer Science courses have had a maximum class size of 25 for many years. Since the proposed course will have scheduled, closed laboratories in a computer laboratory, this maximum must be maintained. Current enrollment figures, however, indicate that the average class size for computer science classes have been essentially constant for the last five years, ranging from 20 for all courses to around 23 for General Education courses. Thus, this maximum class size will not require that more sections be taught.
It is difficult to project the enrollment for the new courses. However, given that the number of required courses in the new curriculum will be the same as the current curriculum, it seems likely that the enrollment will stay the same.
Primary Orientation.
This course is divided fairly evenly into providing students with facts, analytical ability, and technical skills. Since it is an introduction to the topics of Human-Computer Interaction, it introduces the students to many concepts and definitions in these fields.
The laboratory experiments, however, are analytical in nature. The student will have to perform an experiment by running and/or modifying some computer programs and observing their behavior. They will then have to analyze the effectiveness of particular computer interfaces.
Appropriateness of proposed title, number, and credit hours.
A course numbering scheme has been adopted by the department which is consistent with the university guidelines found in the Governance Manual. This course has been numbered according to this scheme.
The first digit is meant to convey that the course is senior level. The second digit indicates the particular area of computer science within which this course lies.
The four credit hours allows the course to have a formal, closed-laboratory component. "Closed laboratory" means that the laboratory is scheduled to take place in a particular room at a particular time. The students complete the laboratory in the room during the time allotted under the supervision of the instructor. It is important to understand that this is not a laboratory course in the sense used among the other science departments where the laboratory involves more contact-hours than credit-hours between instructor and student. For this course, the four credit-hours means four contact-hours per week. This allows the instructor to devote one contact-hour per week for hands-on experimentation and still devote the traditional three contact-hours per week toward lectures.
1. System Engineering GoalsB. Theories, Principles, and Guidelinesa. Proper functionality2. Motivations for Human Factors in Design
b. Reliability, availability, security, data integrity
c. Standardization, integration, consistency, portability
d. Schedules and budgets
e. Human Factors Design Goalsa. Life-critical systems3. Accommodation of Human Diversity
b. Industrial and commercial uses
c. Office, home, and entertainment applications
d. Exploratory, creative, and cooperative systemsa. Physical abilities and physical workplaces
b. Cognitive and perceptual abilities
c. Personality differences
d. Cultural and international diversity
e. Users with disabilities
f. Elderly users
1. High-level TheoriesC. Menu Selection and Form Fill-ina. Conceptual, semantic, syntactic, and lexical model2. Syntactic-Semantic Model of User Knowledge
b. GOMS and the keystroke-level model
c. Seven stages of action
d. Consistency through grammars
e. Widget-level theories3. Principles: Recognition of Diversity
a. Usage profiles4. Guidelines for Dialog Design
b. Task profiles
c. Interaction styles5. Prevention of Errors
6. Guidelines for Data Display
7. Guidelines for Data Entry
8. Prototyping and Acceptance Testing
9. Adaptive Agents and User Models
1. Semantic OrganizationD. Command Languages2. Item Presentation Sequence
3. Response Time and Display Rate
4. Menu Traversal
5. Menu Screen Design
6. Selection Mechanisms
7. Graphical User-Interface Menu Features
8. Embedded Menus
9. Form Fill-in
1. Functionality to Support Users' TasksE. Direct Manipulation2. Command-Organization Strategies
3. Naming and Abbreviations
4. Command Menus
5. Natural Language Interfaces
1. ExamplesF. Interaction Devicesa. Display editors, word processors2. Explanations of Direct Manipulation
b. Spreadsheets
c. Spatial data management
d. Games
e. CAD and CAMa. Problems3. Visual Thinking and Icons
b. The SSOA model4. Direct-Manipulation Programming
5. Remote Direct-Manipulation
1. Keyboards and Function KeysG. Response Time and Display Rate Issues2. Pointing Devices
3. Speech Recognition, Digitization, and Generation
4. Displays
5. Printers
H. System Messages, Screen Design, and Color
I. Multiple Window Strategies
1. Individual Window DesignJ. Hypertext and Hypermedia2. Multiple Window Design
3. Coordination of Multiple Windows by Tasks
1. HyperCard®K. Iterative Design, Testing, and Evaluation2. Multimedia
3. The World Wide Web
4. Visual Approaches for Information Exploration
5. Tree Maps
L. User-Interface Development Environments
1. Specification MethodsM. Social and Individual Impact of User Interfaces2. Programming Support Tools
3. Design Tools for Evaluation and Critiquing
Final Exam 1/3
Projects 1/3
Principles and Guidelines in Software User Interface Design. D. Mayhew. Prentice Hall. 1992.
User Interface Design. R. Eberts. Prentice Hall. 1994.
User Interface Design: A Structured Approach. S. Treu. Plenum Publishing. 1994.
User Interface Evaluation. S. Treu. Plenum Publishing. 1994.
Human-Machine Interactive Systems. A. Kinger (ed.). Plenum Publishing. 1991.
Cognitive Psychology: An Overview for Cognitive Scientists. L. Barsalou. Lawrence Erlbaum Associates, Publishers. 1992.
Adaptive User Support. R. Oppermann. Lawrence Erlbaum Associates, Publishers. 1994.
Human Error. J. Senders and N. Moray. Lawrence Erlbaum Associates, Publishers. 1991.
An Introduction to Human-Computer Interaction. P. Booth. Lawrence Erlbaum Associates, Publishers. 1989.
Human-Computer Interface Design. A. Marlin. Ablex Publishing. 1988.
Human Interface Guidelines: Tha Application Desktop Interface. Apple Computer. 1988.
Interactions
SIGCHI Bulletin
Communications of the ACM
This course is designed for computer science majors only.
2. Library: important references have been added to the library holdings for this course. Consequently, library holdings are sufficient to support the course.
3. Equipment: an NSF grant has been approved to provide an up-to-date lab for this course. Total equipment funding for the new lab is approximately $75,000.
These lab assignments take several forms. First, there are several software environments that are used to develop user interfaces. Students are expected to use such systems to develop graphical objects (typically called "widgets") for use as controls for some type of electronic device. Second, other labs require the student to interface specific input and/or output devices to use with a piece of software. The using software may be either something they have developed, or a commercially available product. A third type of lab exercise would be to evaluate a particular hardware or software product from the standpoint of how it meets sound HCI guidelines. Fourth, the student compares two different systems (again, hardware and/or software) that essentially accomplish the same task. The purpose of the comparison is to evaluate the relative advantages of each system, with respect to HCI principles. Finally, students will conduct cognitive science experiments, as a means of understanding the relative advantages and disadvantages of various input or output protocols, such as menus versus a command language, or form fill-in versus dialogue.
Following is a representative set of laboratories (see attached lab assignments for details):
Lab #1: Introduction to lab equipment.
Lab #2: World Wide Web and Mosaic
Labs #3-4: Widget Design
Lab #5: Home Control Design
Lab #6: Device Speed and Accuracy Experiment
Lab #7: Virtual Keyboard