MPCS 51230 User Interface and User Experience Design (Autumn 2022)

Section 1
Instructor(s) Marques, Andre (andremar)
Location JCL 298
Meeting Times Tuesday 5:30pm - 8:30pm
Fulfills Elective Specialization - Software Engineering (SE-2) Specialization - Application Development (APP-2)

Syllabus

Overview

 

      Instructor: André Marques (he/him/his)

      Email: andre.marques@uchicago.edu

      Prerequisites: Core Programming

      Course Website: Google Classroom

      Office Hours: TBD

      TA: TBD

      TA email: TBD

      Grader: TBD

      Email: TBD

 

Description

 

Whether you’re ordering a burrito, boarding a plane, chatting with friends, booking your next workout, or reading this sentence—you’re likely using software with a user interface.

 

This course will teach you how to create useful and engaging user interfaces.

 

We will cover different methods of approaching design problems, how to conduct research to understand users, create prototypes, discuss, present, and assess design.

 

Learning Objectives

 

At the end of this class you will be able to:

 

      Implement design processes within various contexts: personal projects, startups, and structured software development teams.

 

      Understand the needs of users and identify meaningful problems to address in order to create positive experiences.

 

      Create prototypes of any fidelity using contemporary design tools for web, mobile, and design systems.

 

      Articulate design decisions and provide constructive feedback.

 

Course Components

 

In-Person Class

Tuesdays 5:30PM - 8:30PM central.

 

Lectures & Demos

Lectures and democs will cover topics and techniques that will prepare you for each week’s assignment.

 

Student Interviews

You will interview your classmates for a variety of design activities.

 

Critiques

We will collaborate as a class and in small groups to assess design decisions made on assignments. You will be asked to informally present your designs to peers. I will provide you with structure and guidance throughout this process.

 

Participation

This course will be offered in person; lectures will not be recorded. The expectation is that students will attend class in-person each week. Due to the nature of this course, attendance is essential and required. Failure to attend class on a regular basis could result in a failing grade in the course. If the class schedule doesn’t work for you, you should not take this class. If you miss more than two class sessions during the Autumn quarter, please reach out to masters-admin@cs.uchicago.edu to discuss options for a leave of absence or withdrawal from the course.

 

 

Assessment

 

Grade

 

      25% Participation

      75% Assignments

 

 

Late Assignments

 

You can submit up to 2 late assignments, however you must contact me within 24hrs of the original deadline to coordinate an extension. Failure to submit assignments on time could result in a failing grade in the course. If you miss more than two deadlines during the Autumn quarter, please reach out to masters-admin@cs.uchicago.edu to discuss options for a leave of absence or withdrawal from the course.

 

Academic Honesty

https://studentmanual.uchicago.edu/academic-policies/academic-honesty-plagiarism/

 

 

Topics

 

Thinking

Approaching a design problem. Knowing where and how to start will set you in the right direction on design projects.

 

      Design Process

      Creative Problem Solving

 

Observing

Finding the right problem to solve. Understanding people and their experiences will give you insight into the prototypes you should create and test.

 

      Need Finding

      Human-centered Design       

      Research Methods    

      Personas

      User Testing

      User Journeys

      Metrics

      Research Synthesis

 

 

Making

Creating useful prototypes. Design principles will guide you through the creation of visual interface and user workflow decisions to address the needs of your users successfully.

 

      Accessibility

      Principles, Patterns, & Techniques

      User Goals & User Flows

      Information Architecture

      Visual Design (layout, typography, icons)

      Paper Prototypes

      Low Fidelity Prototypes

      High Fidelity Prototypes

      Iterative Design

      Design Management

 

Evaluating

Communicating design decisions and providing feedback. Design is often a team effort, so we will learn how to successfully work in a design environment with others.

 

      Presentations

      Critiques

 

Tools

 

      Notebook: Observations and low fidelity paper prototypes. Not required for assignment deliverables but useful for exploring ideas.

 

      Figma: Medium & high fidelity prototypes.

 

      Figma is an online user interface design tool that is free for educational use. We will create and share user interfaces with this tool.

 

      InVision: Interactive prototypes.

 

      InVision is an online product design tool that is free for educational use. We will create interactive prototypes with this tool.

 

Readings

 

      This class has no textbook.

      Readings may be assigned weekly and will either be available as links or PDFs on our class website. Readings will support topics covered in class.

 

Schedule

Slight modifications to schedule and assignments may occur as the quarter progresses.

 

Week 1

 

      Lecture: Introduction to user interface and user experience design

      Class Activities: Intro Activity & Interviews for Assignment 1

      Assignment 1: Single page prototype

 

Week 2

 

      Lecture: Discussing design and basic interface design principles

      Class Activities: Group feedback and interviews for new assignment

      Assignment 2: Simple website prototype

 

Week 3

 

      Lecture: Designing responsively and interface design principles continued

      Class Activities: Group feedback and interviews for new assignment

      Assignment 3: Responsive layout prototype

 

Week 4

 

      Lecture: Application design principles and patterns

      Class Activities: Group feedback and interviews for new assignment

      Assignment 4: Desktop application prototype

 

Week 5

 

      Lecture: Accessibility, native app patterns, and needfinding

      Class Activities: Group feedback and interviews for new assignment

      Assignment 5: Mobile application prototype

 

Week 6

 

      Lecture: User on-boarding, retention, and habits

      Class Activities: Group feedback and interviews for new assignment

      Assignment 6: On-boarding prototype

 

Week 7

 

      Lecture: UX research

      Class Activities: Group feedback and interviews for new assignment

      Project: Milestone 1

 

Week 8

 

      Lecture: Detailed Milestone 1 feedback, designing with data, presenting design

      Class Activities: Feedback and interviews for new assignment

 

Week 9

Thanksgiving week; no class.

 

Week 10

 

      Lecture: Design systems, management, user stories, & prioritization

      Class Activities: Feedback on project

      Project: Project Milestone 2

      Graduating Student Project Presentations

 

Week 11

 

      Project Presentations

 

Course Prerequisites

Core Programming required.

Other Prerequisites

This course requires competency in Unix and Linux. Please plan to attend the MPCS Unix Bootcamp (https://masters.cs.uchicago.edu/page/mpcs-unix-bootcamp) or review the UChicago CS Student Resource Guide here: https://uchicago-cs.github.io/student-resource-guide/

Overlapping Classes

This class is scheduled at a time that conflicts with these other classes:

  • MPCS 52560-1 -- Applied Financial Technology
  • MPCS 52011-1 -- Introduction to Computer Systems
  • MPCS 53001-1 -- Databases

Eligible Programs

Masters Program in Computer Science MS in Computational Analysis in Public Policy (Year 2) MA in Computational Social Science (Year 2) Bx/MS in Computer Science (Option 2: Professionally-oriented - CS Majors) Bx/MS in Computer Science (Option 3: Profesionally-oriented - Non-CS Majors)