COMPUTER SCIENCE


Course Credits: 3 Units

Prerequisites: CMSC 123

CMSC 134 - Human-Computer Interaction

Course Description

Foundations of human interaction; interaction design basics; HCI in the software process; cognitive models and theories; applications of concepts and methodologies of software engineering, human factors, and psychology to address ergonomic, cognitive, and social factors in the design and evaluation of interactive computer systems.

Course Learning Outcomes

After completion of the course, the student should be able to:

  1. Explain the human factors and the theoretical issues involved in human computer interaction design;
  2. Apply the theoretical design principles to the design and evaluation of user interfaces;
  3. Design user requirements and human-computer interface;
  4. Use systematic approaches in solving problems; and
  5. Engage in collaborative activities to solve complex problems.
Course Outline

UNIT 1. Introduction to Human Computer Interaction

  1. Definition of HCI
  2. Importance of HCI
  3. Field Covered by HCI
  4. Statistical Analysis using Excel
  5. HCI Community
  6. HCI tools
  7. Usability Requirements
  8. Requirements Analysis
  9. Reliability
  10. Standardization, Integration, Consistency, Portability, Usability

UNIT 2. User Needs Analysis

  1. Activities and Technologies
  2. People Activities, Context to use, Technologies (PACT) Analysis

UNIT 3. Communication Design Principle

  1. Core Principles of UI is Communication
  2. Effective Communication
  3. Intuitive UI
  4. Necessary (and Unnecessary) Consistency
  5. Strategically Unintuitive UI
  6. Levels of Intuitiveness
  7. Inductive UI
  8. Strategically Deductive UI
  9. Asking Intuitive Questions
  10. A model for Users

UNIT 4. Interaction Design Principle

  1. Interactions
  2. Controls (Words)
  3. Commands (Verbs)
  4. Labels and Instructions
  5. Feedback
  6. Task Steps
  7. Task Navigation
  8. Surfaces
  9. Errors, warnings, confirmations, and notifications
  10. Dynamic Elements

UNIT 5. Visual Design

  1. The importance of Effective Visual Design
  2. Working with Graphic Designers
  3. Layout
  4. Designing for Scanning
  5. Typography and Text
  6. Frequent Pattern Growth
  7. Color
  8. Affordances
  9. Icons and Glyphs
  10. Animations and Transitions
  11. Demanding Attention

UNIT 6. Analytical Evaluation

  1. Heuristic Evaluation
  2. Cognitive Walkthrough

UNIT 7. Communicating to People

  1. The importance of Making Emotional Connection
  2. Having a Personality
  3. Personality Attributes
  4. Having a Good Tone
  5. Motivating Users by Providing Obvious Value
  6. Minimizing Effort Having Forgiveness
  7. Building Trustworthiness
  8. Being Smart Without Looking Stupid
  9. Not Being Annoying
  10. Using Courageous Design
  11. Why Be Dull? Make It Fun!

UNIT 8. Communication-Driven Design Process

  1. Definition of Communication-Driven Design Process
  2. Don’t Design Like A Programmer
  3. What Exactly is Design?
  4. A Basic Design Process
  5. The Classic Design Process Mistakes
  6. The Planning Phase
  7. The Design Phase
  8. The Refinement Phase
  9. Giving and Receiving Feedback
  10. What About Agile Development?