CASE STUDY

Better Course Registration

Flatiron School

Addressing a Frustrating, High-Stakes Process

Class registration has always been a high-stress experience for students. As a designer focused on usability and accessibility, I wanted to understand why - beyond just server crashes and slow load times.

Research revealed students were making critical decisions with incomplete information:

This lack of transparency turned a straightforward process into a stressful gamble.

Challenging My Assumptions

User research revealed more nuanced pain points than expected:

A feature prioritization matrix categorizing features into quick wins, big projects, fill ins, and time wasters

These insights reframed my approach from making registration faster to making it predictable.

Exploring Solutions

I focused on data visualization to surface key information at critical moments:

  • Percentage-based indicators for registration chances
Lo-fi mockup of the profile page showing how users are encouraged to set their school preferences
  • Block-based schedule views that made conflicts visually obvious
Lo-fi mockup of the profile page showing how users are encouraged to set their school preferences
  • Inline section comparisons
Lo-fi mockup of the profile page showing how users are encouraged to set their school preferences
  • Phased registration waves for better load management
Lo-fi mockup of the profile page showing how users are encouraged to set their school preferences

Cutting Through the Noise

Early prototypes included extensive metrics like GPA distributions and pass rates, but user testing revealed students simply wanted to know, "Can I get into this class?" This insight led me to simplify the UI around the most actionable data.

Before Testing

Graphic of usability test results with over 60% success rate for both time on task and error success rates

After

Graphic of usability test results with over 60% success rate for both time on task and error success rates

Prototyping

Key changes to server load management:

Old Version

There weren’t many indicators of system change which caused confusion for some users.

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

New Version

Inform users of system changes by specifying the scheduled timing and current phase, reinforced by components like this class status visualizer (right).

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare featureDiagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

Changes to scheduling:

Old Version

Block-based visualization to help students easily understand their weekly schedule and potential conflicts.

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

New Version

Usability testing showed participants struggled with identifying scheduling conflicts and swapping waitlisted sections. Clearer conflict indicators and in-line section swaps resolved these issues.

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare featureDiagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

Changes to student-visible data:

Old Version

Course cards display a percentage to help users gauge their registration chances at a glance.

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

New Version

Since users found GPA distribution and pass rate data less useful, I focused on registration chance as the key metric and enhanced its visibility with color.

Diagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare featureDiagram of user flow for the entire app before changes showing how users had to go through other pages to access the compare feature

Learnings

This project reinforced one of my core design beliefs: the best solutions don’t just remove friction—they create clarity. By providing the right information at the right time, I transformed registration from a stressful experience into a predictable, student-centered process.