[ Catalog Description | Rationale | Objectives | Course Outline | Evaluation Criteria | Suggested Texts | Related Readings | Periodicals | Gen Ed Credit | Resources | Labs ]

 

CSCI 425 - HUMAN-COMPUTER INTERACTION
Department of Computer Science
Millersville University

 

I. 4 CREDITS


II. CATALOG DESCRIPTION

Human-computer interaction (HCI) is a discipline concerned with the design, evaluation, and implementation of interactive computing systems for human use, and with the study of major phenomena surrounding them. This course provides a broad overview of the field with an emphasis on interface development and evaluation. The course includes a laboratory component.

PREREQUISITES: CSCI 362 Required; CSCI 380 Recommended

 

III. RATIONALE

Present curricular needs this course will meet.

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.

 

IV. OBJECTIVES

Upon taking this course, students should have developed the following skills:

 

V. COURSE OUTLINE

A. Human Factors of Interactive Software
1. System Engineering Goals
a. Proper functionality
b. Reliability, availability, security, data integrity
c. Standardization, integration, consistency, portability
d. Schedules and budgets
e. Human Factors Design Goals
2. Motivations for Human Factors in Design
a. Life-critical systems
b. Industrial and commercial uses
c. Office, home, and entertainment applications
d. Exploratory, creative, and cooperative systems
3. Accommodation of Human Diversity
a. 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
B. Theories, Principles, and Guidelines
1. High-level Theories
a. Conceptual, semantic, syntactic, and lexical model
b. GOMS and the keystroke-level model
c. Seven stages of action
d. Consistency through grammars
e. Widget-level theories
2. Syntactic-Semantic Model of User Knowledge

3. Principles: Recognition of Diversity

a. Usage profiles
b. Task profiles
c. Interaction styles
4. Guidelines for Dialog Design

5. Prevention of Errors

6. Guidelines for Data Display

7. Guidelines for Data Entry

8. Prototyping and Acceptance Testing

9. Adaptive Agents and User Models

C. Menu Selection and Form Fill-in
1. Semantic Organization

2. 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

D. Command Languages
1. Functionality to Support Users' Tasks

2. Command-Organization Strategies

3. Naming and Abbreviations

4. Command Menus

5. Natural Language Interfaces

E. Direct Manipulation
1. Examples
a. Display editors, word processors
b. Spreadsheets
c. Spatial data management
d. Games
e. CAD and CAM
2. Explanations of Direct Manipulation
a. Problems
b. The SSOA model
3. Visual Thinking and Icons

4. Direct-Manipulation Programming

5. Remote Direct-Manipulation

F. Interaction Devices
1. Keyboards and Function Keys

2. Pointing Devices

3. Speech Recognition, Digitization, and Generation

4. Displays

5. Printers

G. Response Time and Display Rate Issues

H. System Messages, Screen Design, and Color

I. Multiple Window Strategies

1. Individual Window Design

2. Multiple Window Design

3. Coordination of Multiple Windows by Tasks

J. Hypertext and Hypermedia
1. HyperCard®

2. Multimedia

3. The World Wide Web

4. Visual Approaches for Information Exploration

5. Tree Maps

K. Iterative Design, Testing, and Evaluation

L. User-Interface Development Environments

1. Specification Methods

2. Programming Support Tools

3. Design Tools for Evaluation and Critiquing

M. Social and Individual Impact of User Interfaces

 

VI. CRITERIA FOR EVALUATING STUDENT PERFORMANCE

Example criteria: Mid-term Exam 1/3

Final Exam 1/3

Projects 1/3

 

VII. SUGGESTED TEXTS

Designing the User Interface, 3rd Edition. B. Shneiderman. Addison Wesley Longman Publishing. 1998.

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.

 

VIII. RELATED READINGS

Cognitive Psychology: A Student's Handbook. M. Eysenck and M. Keane. Lawrence Erlbaum Associates, Publishers. 1990.

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.

 

IX. PERIODICALS

Human-Computer Interaction

Interactions

SIGCHI Bulletin

Communications of the ACM

 

X. GENERAL EDUCATION CREDIT

NONE

This course is designed for computer science majors only.

 

XI. RESOURCES

1. Staff: current department faculty have sufficient expertise.

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.

 

XII. LABORATORY

The format of this course includes regular periods scheduled as a closed laboratory, during which time students will be responsible for investigating, developing, or implementing techniques for the use and construction of user interfaces and their applications. The laboratory will meet bi-weekly, seven periods per semester, in two-hour time periods.

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