Lesson 1: Designing With Empathy
To kick off a unit devoted to developing products for other users, students begin by investigating the design of various shoes. We are purposefully starting out by looking at non-technical objects to encourage students to think more broadly about what it means to consider the end-user of a product before honing in on how it specifically applies to software design. Students begin by looking at a variety of shoes and attempting to match each shoe with a potential user. Students also provide feedback on these designs, using an “I Like…” / “I Wish…” / “I Wonder…” structure that will be repeated throughout the unit. To conclude the activity, students are asked to propose some changes to one set of shoes that would make it more useful or usable.
Slides: The Design Process - Lesson 01 - Designing with Empathy - Google Slides
Worksheet: Copy of U4L01 - Activity Guide - Designing With Empathy - Google Docs
Lesson 2: Understanding Your User
This lesson builds on the previous by asking students to not only consider that there is a user that products are designed for, but also empathize with those potential users since designers need to understand their users' needs in order to create useful products. This lesson encourages students to think about how to design for another person by role-playing as someone else using a user profile and reacting as that user to a series of products. Each student is assigned a user profile describing a person, which they then use to choose appropriate products, critique product design, and suggest improvements to design.
Question of the Day: How can we make sure a product is meeting the needs of a user?
Slides: The Design Process - Lesson 02 - Understanding Your User - Google Slides
Work Sheet:
Lesson 3: User Centered Design - Define and Prepare
This is the first part of a two-day lesson where students are guided through an abbreviated version of the design process they will be seeing throughout this unit. This lesson focuses on the Define and Prepare steps of the process. Students first brainstorm a list of potential users of smart clothing. As a class, they then group these ideas into broad categories and each group will choose one category of user. Groups repeat this process to brainstorm the needs or concerns of their user, eventually categorizing these needs and choosing one to focus on. In the next lesson, students will complete the Try and Reflect steps of the design process.
Slides: The Design Process - Lesson 03 - User-Centered Design Define and Prepare - Google Slides
Lesson 6:
In this lesson, students use feedback from "users" of the paper-prototyped app from the previous lesson in order to develop improvements to the user interface of that paper prototype. The lesson begins with a reflection on the fact that designers need to translate human needs with technology into changes to the user interface or experience. Students are then given a collection of feedback and requests from users of the app from the previous lesson. In groups, students categorize the feedback and identify ways the needs expressed in the feedback could be met by changes to the interface of the app. Then in groups students will implement some of these changes to meet one of the needs they identified.
Question of the Day: How can we use feedback to improve an app?
Worksheet: U4L06 - Activity Guide - Improve a Screen - Google Docs
Lesson 7
In previous lessons, needs & interests have been presented more explicitly to students. In this lesson, they have the task of extracting that information from a user interview, which motivates the app they will create. Students begin by first interpreting user interviews to determine the needs & interests of a user. They then speculate on the barriers these users are facing or the opportunities that are available for each user. In a group, they share these barriers & opportunities and brainstorm different apps that could be used to address these issues. By the end of the lesson, students will have decided on an app idea that addresses a barrier or opportunity for a user.
Question of the Day: How can user interviews help us create apps to meet the needs of a user?
Worksheet: U4L07 - Activity Guide - User Interview - Google Docs
Lesson 8:
Lesson 8: Getting Screen Inputs
Students will be able to:
Design apps using the text input, dropdown, and slider design elements
Use getProperty and getText to access user input on the screen
Use user input to update elements on the screen using code
Students learn to use several new design elements - text inputs, dropdowns, and sliders - so they can get user input from the screen of their apps. This lesson also introduces students to the getProperty and getText blocks, which allow them to access their user input in their code. Students first practice using these tools to determine what the user has input in various user interface elements. Students later use getProperty and setProperty together with the counter pattern to make elements move across the screen. A new event trigger, change, is also introduced to represent when a dropdown or slider changes values.
Question of the Day: How can we use the app screen for user input?
Lesson 9: Designing Apps for Good
Lesson 9: Designing Apps for Good
This lesson lays the foundation for the project that will last the remainder of the unit. Students first explore a number of apps designed for social impact that have been created by other students. (For this lesson and the projects, you might or might not be working in groups. Check with your teacher.)
Slides: The Design Process - Lesson 09 - Designing Apps for Good - Google Slides
Worksheet: Activity Guide - App Design Kickoff - Google Docs
Lesson 11: Exploring UI Elements
This lesson helps narrow the scope of the types of design elements students can include in their apps since up until now, students have explored and brainstormed apps with a variety of functionality - they may have discovered apps that use maps, or connect to social media, or access data on your phone. However, students will eventually be prototyping these apps in App Lab, so they will be in better shape if their ideas align with the kinds of apps that can be made using AppLab’s tools. Today focuses on having teams look at several example apps made in AppLab and identifying the components of the user interface. They then make a plan for which features could use which components in their app.
Slides: Lesson 11 - Exploring UI Elements - Google Slides
Worksheet: Explore UI Elements - Google Docs
Lesson 10: Market Research
In this lesson students research apps similar to the one they intend on creating to better understand the needs of their users. Students work to search the Internet for other apps, then evaluate the ones they find interesting. By the end of the lesson, students will have a clearer idea about the type of app they want to create and further refine who their target users are. Each student will maintain a list of citations for all the apps they examined for use in their final presentation.
Question of the Day: How can we use existing apps as inspiration for our own apps?
Slides: Lesson 10 - Market Research - Google Slides
Worksheet: Market Research 2021 - Google Docs
Lesson 12: Build a Paper Prototype
The primary purpose of developing paper prototypes is that they allow for quick testing and iteration before any code is written. This lesson is focused on giving teams a chance to test their prototypes and gut-check assumptions about how the app should be laid out and navigated before moving to App Lab. Teams develop a plan to test with users before running prototype tests with multiple other students in the class (and potentially outside the class). In order to test the prototype with the users, the students will have to assign roles in the testing (the “narrator”, the “computer” and the “observers”) as well as have some questions prepared for the user to answer after the test is complete.
Question of the Day: How does our prototype work when tested by real users?
Slides: Lesson 13 - Prototype Testing - Google Slides
Worksheet: Paper Prototype Planning - Google Docs
Code.org. (2024). Computer Science Discoveries ('24-'25) (Grade 6-8) Computer science. https://studio.code.org/courses/csd-2024