Course Highlights
This course features exams with solutions for multiple years. In addition, an extensive bibliography of assigned and recommended readings is provided in the readings section.
Course Description
6.831 introduces the principles of user interface development, focusing on three key areas:
- Design: How to design good user interfaces, starting with human capabilities (including the human information processor model, perception, motor skills, color, attention, and errors) and using those capabilities to drive design techniques: task analysis, user-centered design, iterative design, usability guidelines, interaction styles, and graphic design principles.
- Implementation: Techniques for building user interfaces, including low-fidelity prototypes, Wizard of Oz, and other prototyping tools; input models, output models, model-view-controller, layout, constraints, and toolkits.
- Evaluation: Techniques for evaluating and measuring interface usability, including heuristic evaluation, predictive evaluation, and user testing.
The semester starts with various assignments, and ends with a substantial programming project. This course is worth 6 Engineering Design Points.
Technical Requirements
Any number of Java® development tools, such as the Java® Development Kit or Eclipse®, can be used to compile and run the .java files in this course.