Lesson 8: Designing Apps for Good


To kick off the app design project that lasts through the end of the unit, students first explore a number of apps designed for social impact that have been created by other students. The class then reviews the Define, Prepare, Try, and Reflect steps of the Problem Solving process as they develop an idea for an app of their own with social impact. Finally, students will form project teams and lay out a contract for how the team will function throughout the development of their app.


While this lesson spends some time reviewing and reinforcing the user-centered design process that students will use throughout their project, the primary goal is to give students a chance to see how other people their age have used technology to address issues they care about. The resources provided are a great starting place, but you can make this lesson pack a bigger punch if you find examples (even those from your own previous classes) that demonstrate local examples of students designing apps for social good.


Warm Up (10 min)

Activity (45 min)

Wrap Up (5 min)

View on Code Studio


Students will be able to:

  • Identify ways in which apps can effect social change



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

For the Teachers

For the Students

Teaching Guide

Warm Up (10 min)

Apps Created by Students

Teaching Tip

The reason for not revealing the team assignments at the beginning of the lesson is so students can begin to form their own ideas about apps they may want to work individually before bringing their ideas to the team. Alternately, you can have students move to their team tables at the beginning of Activity 2.

Group: Students should be seated in their pre-assigned teams of 4-5 students, but don’t tell them that they are in their team assignments yet.

Display: Share with students the example apps you've selected, either from Example Apps for Good - Teacher Resource or elsewhere. For each app:

  • Discuss: What is the social issue that this app was designed to address, and how was it designed to do so.

  • Prompt: Are there other apps or pieces of technology you're aware of that work do address a social issue?

Activity (45 min)

What's in an App?

Discuss: Ask students what they think an app is. If the discussion stalls, try asking some of the following prompts:

  • What do you think the difference is between an application (like Microsoft Word) and an app like those we looked at earlier?
  • What are some of the things you noticed the students did to build their app?
  • Which apps did you think were the most creative? The most useful? The most surprising?
  • Which apps do you think would be difficult to create? Why?

Review: Show the Problem Solving Process graphic, and review the Define, Prepare, Try, and Reflect steps. Let the students know that the micro and mini projects they worked on previously focused on the Define and Prepare steps. With this project, they will also work through these two steps, but then continue on to the Try and Reflect steps. They will also cycle back through them at least once to refine their app.

Teaching Tip

Reducing Printed Materials This guide can be completed online or as a journal activity.

Transition: If students are not already seated in their app teams, have them do so now.

Distribute: One copy per team of App Design Kickoff - Activity Guide

App Design Kickoff

Let students know that they are currently seated with the team that they will be working with throughout this app design project.

Team Contract

Teaching Tip

The rules in the team contract are general enough to work for most classrooms, but to make it more impactful you should consider customizing the contract to include wording from your classroom or school rules.

In order to support a positive and productive team work environment, each team will start by developing and signing a contract. You can use this contract throughout the course of the project to address and mediate issues among team members. Go through each section of the contract with the whole class.

Communication: The communication section covers basic respectful communication guidelines. There are two open spaces for groups to add rules of their own. Ask groups to consider the modes of communication that they'd like to use and what the expectations should be. For example, we will use email to communicate outside of the classroom and team members will respond within 24 hours

Decision Making: While other sections are just bullet pointed lists, the decision making section is numbered to reinforce the priority of the decision making steps.

Participation: The participation section is meant to prevent students from spinning their wheels in situations where they are unsure how to proceed. Consider adding rules to this section as a whole class.

Once you've confirmed that all students understand and agree to the terms of the contract, have team members sign their names at the bottom.

Distribute: Pass out sticky notes to each group.

Transition: If space allows, give each team some space to work on the next activity where they can spread out.


The second page of App Design Kickoff - Activity Guide provides space for teams to brainstorm about their apps.

Review: Remind students of the brainstorming activity they did in the User-Centered Design Micro Activity where they spent a few minutes coming up with as many user types as they possibly can. Let them know they will be doing the same exercise again, but this time they will be focused on writing down as many possible users for their app topic as they can. In particular, remind them:

  • One user per sticky note
  • No bad answers
  • Build on others’ suggestions with “Yes, and…”

Finally, remind them that after they brainstorm on sticky notes, they’ll have a few minutes to sort and analyze them, but their first goal is to write down as many ideas as possible, no matter how crazy.

Team Name: To warm up and practice brainstorming, give teams one minute to come up with a team name and record it on the activity guide

Topic: Give teams roughly five minutes to choose a general topic for their app. It's important to remind them that they aren't trying to come up with what the app will do or any specifics at this point, but just agreeing on a general topic that it should address.

User Groups: Give students some time to generate ideas for users, and then go through the process of user grouping. Remind students that when grouping users they don’t have to make a decision about their target user during this step, just make the groupings. They should arrange the sticky notes on their tables into categories, and if there is time, come up with a short name for the grouping. Tell them they will have 1-2 minutes to come with with users, and an additional 1-2 minutes to group those users.

Once teams have a group of possible users for their topic, they should work together to narrow down their potential target user group to one or two general categories. Tell students that they will have time during the next two lessons to further research and refine their target user group, but they want to have a clear starting point to guide that research.

Share: Ask each team to briefly share their name, topic, and user group.

Wrap Up (5 min)

Discussion Goal

In the following lesson we will use market research (researching existing solutions to each group's problem) as a way to learn about how others have addressed user needs already. While that will be a common way that all groups can learn about their users, use this discussion to help students consider ways to learn about their users outside of the lessons provided.

Planning for Research

Discuss: Given that groups are tackling big real world problems with these apps, it's unlikely that they'll have direct access to potential users to interview. Discuss with the class how they think they can learn more about who their users are, and what their needs might be.

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

IC - Impacts of Computing
  • 2-IC-20 - Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options.
  • 2-IC-21 - Discuss issues of bias and accessibility in the design of existing technologies.