Lesson 6: Identifying User Needs


Up to this point students have focused on designing for users who are, to some degree, distanced from them. Whether through brainstorming, profiles, or text feedback, the connection to an end user has never been direct. This distance is designed to help students get outside their own head when thinking about users, but in order to get information more directly from an actual user, students need to rely on their classmates. In this lesson students pair up to become users (and designers) for each other, allowing everyone to directly interview their end user and ask questions to better inform their design. Each student pair interviews each other, attempting to identify a specific need that could be addressed by an app.


Up to this point students have explored users and empathy at a distance - whether it's analyzing a user profile, brainstorming potential users and needs, or responding to written feedback from users. In this lesson we transition to a more direct interaction with users, through interviews.

Assessment Opportunities

  1. Conduct an interview to collect information about user needs

    Activity guide: Students should have collected comprehensible user responses to the original questions on the first page and written down relevant follow up questions on the second.

  2. Analyze interview notes to identify specific user needs

    Activity Guide: There should be multiple barriers identified on the bottom of the last page of the activity guide, which connect to the notes from the interview.


Lesson Modifications

Warm Up (5 min)

Activity (40 min)

Wrap Up

View on Code Studio


Students will be able to:

  • Conduct an interview to collect information about user needs
  • Analyze interview notes to identify specific user needs


  • Print one copy of User Interview activity guide for each student
  • Print one copy of project guide for each student
  • Gather brainstorming materials (pens, sticky notes, etc)


Heads Up! Please make a copy of any documents you plan to share with students.

For the Students

Teaching Guide

Lesson Modifications

Attention, teachers! If you are teaching virtually or in a socially-distanced classroom, please read the full lesson plan below, then click here to access the modifications.

Warm Up (5 min)

Teaching Tip

Push students to think beyond learning information or academic subjects, but instead to focus on more aspirational skills. Playing an instrument, doing a craft, or making something are all good fodder for the following activities.

Personal Goal

Journal: What is something you've always wanted to learn (or learn to do better)? This will be shared with a peer, so make sure this is something you are comfortable shared. What has gotten in the way of you learning this?

Activity (40 min)

Listening to Users

Teaching Tip

Reducing Printed Materials

This Activity Guide can be completed online or as a journal activity.

Group: Pair students as heterogeneously as possible. The goal in pairing is for students to attempt to solve a problem that is not their own, so to the extent possible you want students to be paired with someone of different interests and background.

Distribute: Give each student one copy of the User Interview - Activity Guide.


Until this point the information that you have received about users has always been at best second hand and one directional (from the user to you). Often this is the only type of information we can get about users, but whenever possible it's best to go directly to the source. You each are now paired with your new user, and your job is to design an app for this user. Your apps will be designed to remove a barrier to learning something new - the same something new that you each identified in the warm up activity.

User Interview

This interview activity is broken into two parts - two initial questions that appear on the first page, and three follow-up questions that students will create on the second page.

Initial Questions

These first questions are focused on learning what specifically each user wants to learn, and what they think is in the way of that. This should give each student some explicit information to work off. Give each student roughly three minutes to complete this portion of the interview with their partner, and push them to come up with follow-up questions on the spot that will keep the user talking for the full three minutes.

Developing Follow-up Questions

After everyone has had a chance to ask the initial questions, give students a few minutes to read back through their notes. Students should seek out and highlight any statements that they would like to know more about and any ambiguous statements that need to be clarified. The goal of this time is to "read between the lines" and try to figure out what your user has not yet stated, or what assumptions that you may have that need to be validated.

Once students have reviewed the responses to the initial questions, they should each write down three follow-up questions.

Give students another 2-3 questions each to ask their follow-up questions.

Identifying Barriers

The final goal of this interview is to identify a handful of barriers to the user learning what they wanted. As students complete this section, encourage them to point out specifically what in their interview notes lead to identify each barrier.

Share: Give each student a chance to share back a few of the barriers that they identified, keeping track of all of them on the board.

Discussion Goal

The goal here is to guide the students towards general types of barriers that will allow them to work together to brainstorm around a broad category of barrier, without worrying about the specifics on their user. Ideally these categories look something like:

  • Time management (finding the time to learn something)
  • Resource acquisition (getting resources needed to learn something)
  • Mentorship (finding human support to learn something)
  • Prerequisite skills (building the base skills to learn something)

If your students struggle to identify barriers at this level, consider providing these categories for them and having them look through their interview notes to find examples of each kind of barrier.

Discuss: As a class talk about how we could categorize all of these barriers. On the board, create 4-5 general categories as identified in the discussion (see discussion goal for tips) and sort the barriers from earlier into these categories. It's not essential that every barrier fits neatly into one of the categories, but the class should come up with a broad enough set of categories to cover most of their identified barriers.

Brainstorming Solutions

Share: Have each student select one of their identified barriers as the focus of their app. The barrier that they chose should fall under one of the categories created in the previous discussion. Students then share out what their category is (not the specific barrier).

Group: Based on the categories chosen, group students into common categories.

Brainstorm: In groups, brainstorm potential app-based solutions to the barrier category. While each student should keep their specific barrier mind during this activity, the goal is to consider solutions to the broader category of barriers - this will give students the change to see potential solutions that they may not have considered for their specific problems.

Wrap Up

Teaching Tip

Reducing Printed Materials

This project guide can be completed online or as a journal activity.

Project Preparation

Distribute: Give each student a copy of Paper Prototype - Project Guide

Prompt: Look over this project guide. Tomorrow we will kick of this project based on the interview and brainstorming you completed today. On the first page, complete the Define section.

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
  • 2-AP-15 - Seek and incorporate feedback from team members and users to refine a solution that meets user needs.
  • 2-AP-17 - Systematically test and refine programs using a range of test cases.
IC - Impacts of Computing
  • 2-IC-21 - Discuss issues of bias and accessibility in the design of existing technologies.
  • 2-IC-22 - Collaborate with many contributors through strategies such as crowdsourcing or surveys when creating a computational artifact.