Problem Solving and Computing 24 25
Problem Solving and Computing 24 25
Problem Solving and Computing is a highly interactive and collaborative introduction to the field of
computer science, as framed within the broader pursuit of solving problems. You’ll practice using a problem
solving process to address a series of puzzles, challenges, and real world scenarios. Next, you’ll learn how
computers input, output, store, and process information to help humans solve problems. The unit
concludes with a project in which you design an application that helps solve a problem of your choosing.
Chapter 1 Overview
Chapter 2 Overview
Implementation Guidance for Problem Solving and Computing
Professional Development
Active section:
Select a section Show All Lessons Hide All Lessons
1 ● Check-In Survey
✓
Lesson 6: Processing
This lesson introduces the concept of processing within computational problem-solving. While
this lesson focuses on four common types of processing - if/then (conditionals), finding a
match (searching), counting, and comparing - students should understand that processing is
whatever a computer does to turn inputs into outputs. Students are first introduced to the
types of processing through several sample apps. They then investigate more apps to
determine what sorts of processing each uses. They then think of their own app and decide
what types of processing it would need to work. Finally, they brainstorm other types of
processing that may be useful but were not included in the main lesson.
Question of the Day: What are the different ways computers can process information?
Lesson 7: Storage
This lesson introduces the final component of the unit's model of computing: storage. After
trying out an "outfit picker" app, students discuss what information should be stored in the
app versus input every time the app is run. They then look at a series of apps and use their
decisions about what should be stored to create guidelines for deciding what information to
store. They then review the four components of this chapter's model of computing: input,
output, storage, and processing. Afterward, they have one last opportunity to revise their
decisions about which items should be classified as a "computer" from earlier in the chapter.
The lesson ends with a reflection on their own app ideas and how storage could be used.
Question of the Day: Why is storage an important part of the computing process?
1 App: Outfit Picker
1 ● End-of-Unit Survey
✓
Post-Project Test
This lesson is locked - you need to become a verified teacher to unlock it. Learn more.
●
✓
Alternative Lessons
Overview Objectives
This lesson is a fun introduction to the open-ended, Students will be able to:
collaborative, and creative problem-solving students will be
using over the rest of this unit and course. Students work in Communicate and collaborate with
groups to design aluminum foil boats that will support as classmates in order to solve a
many pennies as possible. Groups have two rounds to work problem
on their boats, with the goal of trying to hold more pennies Identify different strategies used to
than they did in round 1. The structure of the activity solve a problem
foreshadows different steps of the problem-solving Iteratively improve a solution to a
process that students will be introduced to in more detail in problem
the following lesson. At the end of the lesson, students
reflect on their experiences with the activity and make
connections to the types of problem-solving they will be
doing for the rest of the course
Preparation
Question of the Day: What can help us to work together For each group
and solve problems as a team? 2 sheets of aluminum foil, 5x5
Alternate versions of this lesson are also available. inches in length each
1 container that can hold 3-5 inches
Newspaper Table of water
Spaghetti Bridge Several paper towels or rags that
Paper Tower can be placed under the container
15 pennies
One copy of the activity guide
Standards Full Course Alignment
For the teacher
CSTA K-12 Computer Science Standards (2017) 1 container that can hold 3-5 inches
AP - Algorithms & Programming of water
50 pennies
Agenda Extra paper towels or rags
Check the "Teacher's Lounge"
Tech Setup forum for verified teachers to find
additional strategies or resources
Warm Up (5 minutes) shared by fellow teachers
Set the Stage If you are teaching virtually,
Activity (35 minutes) consider checking our Virtual
Building an Aluminum Boat Lesson Modifications
Goal and Rules
Develop a Plan
Test Your Boat Links
Evaluate and Improve
Heads Up! Please make a copy of
Wrap Up (5 minutes) any documents you plan to share
Discuss the Challenge with students.
Reflection For the teachers
Code.org How-to Videos
Intro to Problem Solving - Slides
Make a Copy
For the students
Aluminum Boats - Activity Guide
Make a Copy
Teaching Guide
Tech Setup
Throughout the year, in order for you to be able to see student work, and for students to be able to access
online tools and resources, all students need to be in the same section on Code Studio. To see
assessments and answer keys that Code.org provides, you also need to be a "verified teacher".
Teaching Tip
How-To Videos: The following steps are also covered in a series of Code.org How-to Videos available
on Code.org's Teacher Support website. You may decide to watch these videos before reading the
instructions below.
Warm Up (5 minutes)
Set the Stage
Prompt: What makes someone a good problem solver? Be ready to share three ideas with your group.
Teaching Tip
Journaling: Journaling is a key practice in CS Discoveries. Students can journal on loose leaf paper, in
notebooks, or digitally.
Slides: Slides for this unit are available in the "Teacher Resources" section of the lesson plan. You will be
prompted to make a copy, which you will only need to do once - after that, you may use the slides for
each lesson in the curriculum.
Discuss: Allow students to share answers at their table groups or with a partner, then have those who are
comfortable share with the whole class.
Discussion Goal: The goal of this warm-up is to start students thinking about problem-solving in
preparation for the day's activity. Highlight answers that reinforce key practices in the class, such as
collaboration, persistence, and creativity. This is also a chance to reinforce a positive culture that
encourages students to share out and support each other in brainstorming ideas.
Remarks
Those are all great ideas! In computer science, we have to solve problems all of the time, so we'll be
looking back at all of these problem solving skills today and for the rest of the course. Most of the
problem solving that people do in computer science happens in teams. Today, we're going to work in
teams to solve a fun problem that doesn't need computers. While you work on that problem, here's a
question that you can think about.
Remarks
Today we're going to be building aluminum boats. You'll have an opportunity to build at least two boats
and use your experience with each one to improve your designs. Before we get started, decide as a
group what kind of design you'd like to make with your first boat. Record your ideas and any possible
weaknesses of this design on your activity guide.
Getting Copies of Google Docs: Activity Guides in this curriculum are available as Google Docs, Word
Docs, and PDFs. If you'd like to edit or make your own copy of a Google Doc you may without
requesting access. Simply log in with a Google account, click "File" and "Make a copy" from the menu.
You may then share your own copy with your students.
This activity can get your room wet! Ideally, each group should have its own bucket/container with
water to conduct its own tests. If needed, you can have several groups share one container, but be
mindful to set guidelines for sharing that container. Place towel/rag under each container. You may also
want to consider teaching this activity in the hallway or some other space if your room is very
restrictive, or add in additional rules as necessary.
Develop a Plan
Give students a couple minutes to discuss in groups the approach they will be taking with this first boat.
Once groups have recorded their ideas and some possible weaknesses they can come to you to get their
aluminum foil and begin building their boats.
Teaching Tip
Hold onto the foil until students submit a plan for their boat. The goal isn't to slow them down too much,
but just give them a moment to reflect briefly on the possible approaches they could take. This is one
way this activity foreshadows the Planning step of the problem solving process students will see in
subsequent lessons.
Share: Have students share the results of their first run with neighboring groups. Ask groups to focus
particularly on what the eventual failure of their boat was (e.g. it wasn't deep enough, it was unstable, etc.)
and brainstorm ways to get around those problems.
Teaching Tip
While some students will view this portion as a competition, emphasize that each group is looking to
improve its own design, not competing against others. You are appealing for each student to challenge
themselves first, not others.
Develop a Plan
Prompt: Now that you've had a chance to learn from the first round of boat making, let's run the same
activity again. First, your group will develop a new plan. Just as before, record it on your activity guide, and
once you're ready I'll come around and give you a new piece of foil.
Support : As you circulate from group to group, ask questions about the group’s focus in redesign. EX:
“What aspect of your boat needed the most improvement?” “What ideas from other groups did you want
to incorporate to yours?” “Did you feel the need to completely restructure your boat, or make minor
modifications?”
Once groups have prepared their new plans give them a new piece of foil and have them each build a new
boat.
Assessment Opportunity
In the Activity Guide, you can check for strengths and weaknesses in students' original design and
connections to appropriate changes for the next iteration of the project.
Identify different strategies used to solve a problem
You can also check their activity guide for strategies for overcoming the challenges in the activity. You
also may want to check the "strengths" of their designs that students list as part of developing their
plan on the second page of the guide.
Reflect
Transition: Ask class to return to their own seats to reflect on the activity.
Wrap Up (5 minutes)
Discuss the Challenge
Question of the Day: What can help us to work together and solve problems as a team?
Prompt: You worked in teams for this activity. How did working in a team make this activity easier, how did
it make the activity more challenging? What helped your group overcome these challenges?
Discuss: Allow students time to share thoughts with the class.
Assessment Opportunity
Students may recognize that collaboration allowed them to think through their ideas more thoroughly
or that they were able to split up the work that they needed to do. As students list challenges, ensure
that they are coming up with ways to overcome those challenges. If you have noticed any issues in
group dynamics during the activity, you may want to use this time to bring up these as potential
problems in a non-confrontational way and help students to generate strategies for working together
more effectively in future activities. These can serve as classroom norms for group work moving
forward.
Remarks
All of your thoughts around these questions were great. We're going to be doing a lot of teamwork in this
class. You may be used to thinking about computer science as being all about computers, but first and
foremost computer science is about solving problems, and usually that happens in teams. A lot of other
parts of this activity like improving designs, and building things is also going to be a big part of this class. I
hope you're excited for the year. Tomorrow we'll start digging deeper into problem solving itself.
Reflection
Code Studio: Have students answer 5 quick survey questions at the beginning of this unit. Once at least 5
students have completed the survey you will be able to view the anonymized results in the Teacher
Dashboard. Some of these questions will be asked again at the end of the first project, which can be helpful
in seeing student growth and shifts in attitudes throughout the unit.
1 ● Check-In Survey
✓
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 2: The Problem Solving Process
45 minutes
Overview Objectives
This lesson introduces the formal problem-solving process Students will be able to:
that students will use over the course of the year, Define -
Prepare - Try - Reflect. The lesson begins by anchoring the Given a problem, identify individual
formal problem-solving process in some real-life actions that would fall within each
experiences they already have solving problems by asking step of the problem solving
students to brainstorm all the different types of problems process
that they encounter in everyday life. Students are then Identify useful strategies within
shown the four steps of the problem-solving process and each step of the problem solving
work together to relate these abstract steps to their actual process
experiences solving problems. First students relate these
steps to the problem activities from the previous lesson,
then a problem they are good at solving, then a problem
they want to improve at solving. At the end of the lesson,
Preparation
the class collects a list of generally useful strategies for For each student
each step of the process to put on posters that will be
used throughout the unit and year. Print a copy of Activity Guide
Question of the Day: What are some common steps we For the class
can use to solve many different types of problems? Poster paper
Markers/colored pencils
Standards Full Course Alignment For the Teacher
CSTA K-12 Computer Science Standards (2017) Check the "Teacher's Lounge"
forum for verified teachers to find
AP - Algorithms & Programming additional strategies or resources
shared by fellow teachers
Agenda If you are teaching virtually,
consider checking our Virtual
Warm Up (5 minutes) Lesson Modifications
Problems Brainstorm
Activity (35 minutes)
The Problem Solving Process
Links
What it Looks Like Heads Up! Please make a copy of
A Problem You Are Good at Solving any documents you plan to share
A Problem You and a Classmate Want to Get Better with students.
at Solving
Create Posters of the Steps For the teachers
Wrap Up (5 minutes) Problem Solving Process
Extended Learning The Problem Solving Process -
Article Discussion Slides Make a Copy
For the students
Problem Solving Process - Video
(Download)
The Problem Solving Process -
Activity Guide Make a Copy
Teaching Guide
Warm Up (5 minutes)
Problems Brainstorm
Prompt: We use the term "problem" to refer to lots of different situations. I could say I have a problem for
homework, a problem with my brother, and a problem with my car, and all three mean very different things.
On a sheet of paper I want you to brainstorm as many different kinds of problems as you can and be ready
to share with the class.
Discuss: Students should silently record their ideas in writing for a couple of minutes. Afterward, invite
them to share what they wrote with a neighbor and then finally bring the whole class together to develop a
classwide list. Record all the different kinds of problems students think of on the board or somewhere else
that they'll be clearly visible.
Discussion Goal: This conversation aims to demonstrate that problems and problem-solving are a part of
everyday life. Use this brainstorm to list as many different kinds of problems on the board as you can. This
will be useful when you later ask students to select one type of problem that you believe they're
particularly good at solving.
Teaching Tip
Make Categories: You may want to group problems into larger categories during this conversation and
invite students to help you do so. For example, if two suggestions are "finding my keys" and "finding
my homework" suggest a larger category of "finding lost things".
Real World Problems: Try to guide students away from too many homework or subject-area type
problems (e.g. math problems, word problems, science problems, etc.) by saying you're more
interested in real-life problems like solving disagreements, making big decisions, fixing or finding things,
getting from one place to another, etc.
Remarks
Clearly we encounter problems in lots of different areas of our lives. Depending on the context, this word
can have many different meanings. Today, we're going to look at some steps we can use to solve all sorts
of problems.
Question of the Day: What are some common steps we can use to solve many different types of
problems?
Distribute: Hand out copies of the The Problem Solving Process activity guides.
Videos are used throughout the curriculum to spark discussions, supplement key concepts with
additional explanations and examples, and expose students to the various roles and backgrounds of
individuals in computer science.
While interacting with the video, turn on closed captioning so students can also read along as they
watch.
To encourage active engagement and reflection, use one or more of the strategies discussed in the
Guide to Curriculum Videos.
Introduce and as a class review the descriptions of the four steps in the process by reading them aloud.
Answer or discuss any questions students have about the process but otherwise move on to completing
the first section of the activity guide.
Given a problem, identify individual actions that would fall within each step of the problem-solving
process
You can check that students have written down reasonable actions for each of the four steps in the
problem they are trying to solve on page 2 of the activity guide.
You may also choose to do this activity digitally. Check out the forum to see how other teachers have
modified this activity for their classrooms, or to share your own modifications.
Prompt: At your tables, choose one of the problems that you worked on today, and create a poster that
shows how the problem solving process can be used to help solve it.
Circulate: As students work on their posters, ask them questions about their different problems, and how
the steps to solve it relate to the general steps of the problem solving process.
Share: Allow students to share their posters with the rest of the class.
Wrap Up (5 minutes)
Question of the Day: What are some common steps we can use to solve many different types of
problems?
Prompt: You saw a lot of different types of problems today, but they all used our Problem Solving Process.
For each step of the process, think of one general tip that could be useful no matter what problem
someone is trying to solve.
Assessment Opportunity
Check that students are coming up with effective strategies for each step of the process. These should
be general strategies, not specific to the particular problems that they chose to solve.
Remarks
I began by saying a formal problem solving process could help us solve all kinds of problems. Today we
began to understand what this process looks like in a variety of real life situations. Tomorrow we're going
to start putting this process into action to see how it actually works.
Extended Learning
Article Discussion
Read through the article, You Are Solving the Wrong Problem
1. What was interesting about this article?
2. What current events do you think we need to look at through this problem solving process? Why?
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 3: Exploring Problem Solving
90 minutes
Overview Objectives
In this lesson, students apply the problem-solving process Students will be able to:
to three different problems in order to better understand
the value of each step. They will solve a word search, Apply the problem solving process
arrange seating for a birthday party, and redesign a to approach a variety of problems
classroom. The problems grow increasingly complex and Assess how well-defined a problem
poorly defined to highlight how the problem-solving is and use strategies to define the
process is particularly helpful when tackling these types of problem more precisely
problems. The lesson concludes with students reflecting on
their experience with the problem-solving process. They
will justify the inclusion of each step and will brainstorm
questions or strategies that can help them better define
Preparation
open-ended problems, as this is often the most critical Print the activity guide for each
step. student
This lesson will likely take two class periods or more to Scratch paper for the Birthday
complete. The first two problems may fit into a single class Party problem
period but the third will need to be moved to a second day. Poster to record strategies for
defining problems in wrap up
Question of the Day: How can we apply the problem- discussion
solving process to many different kinds of problems?
Check the "Teacher's Lounge"
Alternate versions of this lesson are also available. forum for verified teachers to find
Animal Theme additional strategies or resources
Games Theme shared by fellow teachers
If you are teaching virtually,
consider checking our Virtual
Standards Full Course Alignment Lesson Modifications
Remarks
With such a wide variety of problems and strategies, it's important to be able to think about how best to
use the problem solving process. Today we're going to look at some different types of problems, talk
about what makes them different, and reflect on how the problem solving process helped us solve them.
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Solving Problems
Word Search
Once students are in pairs ask them to flip over their activity guides and begin the first challenge. They'll be
finding the 8 words in a 20 by 20 grid of letters.
Circulate: Walk around the room observing how students are addressing the problem. Make sure that
groups are not sharing locations of words. Encourage them to think about how making a plan might help
them address this task.
Teaching Tip
Integrating the Problem Solving Process: This word search can actually take several minutes, especially
if students are approaching without some kind of strategy. Remind them that one step is to Prepare
before they just jump in and start hunting.
Answer Key: An answer key is provided for verified teachers as part of the resources in this lesson plan.
If you do not see the answer key listed as a resource, follow these steps to become a verified teacher.
Once all groups have finished, bring the class back together. Have students flip to the last page of the
activity guide where there is a table to record their experiences with the problem. They will record what
parts of solving this problem fall within each step of the problem solving process.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was already very well defined. Not all problems will be, though.
Prepare: Developing a plan with a team (such as divvying up the words, splitting the grid into separate
sections that each member searches in, or just being methodical about looking for words) makes this
problem much easier to solve than random searching.
Try: Patience and persistence is important to see your plan through
Reflect: If your early plans are not working you can regroup and choose a new plan
Birthday Guests
Move the class on to the birthday guests problem. Groups may still work together on their solutions but
shouldn't share with other groups.
Circulate: As before, circulate around the room noting the types of strategies that groups are using.
Remind them to use the steps of the problem solving process to help them if they're getting stuck.
Teaching Tip
Integrating the Problem Solving Process: This problem is particularly challenging if you don't Define the
problem well. If you take it at face value, your job is to randomly guess and check where to put
individual people until you find a solution. It is much easier if you define the problem as place groups of
friends instead. Make groups of 2 or 3 you know need to be together and then figure out which groups
can't be at the same table.
This isn't the only approach to the problem, and you shouldn't rush to introduce it as such. Rather,
encourage students to discuss with one another what they know needs to be true at the end and
whether different approaches might help.
Draw Pictures: Students will likely do better if they draw pictures. You may wish for students to use a
journal or scratch paper as a place to brainstorm ideas.
Extending the Problem: If one group finishes far before others you could give them a blank sheet of
paper and ask them to solve the problem again but with a new condition of your choosing (e.g. pick two
people sitting at the same table in their solution and ask whether they can solve the problem now that
those two people are also in a fight.)
Once groups have finished solving the problem ask them to move to the last page of the activity guide to
record how they used the problem solving process to solve this problem.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: The problem seems to be a problem of seating individuals. If you instead think of it as a
problem of seating groups of people who would like to be together there are many fewer possible
solutions to consider.
Prepare: Ask students to share what types of strategies they considered before just starting to assign
people to seats.
Try: As before, patience and persistence is important to see your plan through
Reflect: If early strategies are not working groups may have regrouped and tried a more structured
approach
Integrating the Problem Solving Process: This problem is intentionally very open-ended and in fact has
students develop the criteria they'll use to measure success. This problem does the best job of
highlighting all 4 steps of the process and walks students more intentionally through the Define,
Prepare, Try, and Reflect stages.
Give Resource Ideas: Students may just brainstorm ideas and layouts by themselves, but also let them
know about other resources such as search engines and image searchers to help give them inspiration
if they are stuck. Let them look at other classrooms online for help.
When to Stop: This problem could easily take a 50 minute class period. Let students know ahead of
time that there are time limits on what they're doing and encourage them to think how they would
improve their route using the problem solving process if they had more time to iterate.
Bring groups back together and have them share their initial plans. On the activity guides they can record
the feedback their classmates give them on their plans.
Once groups have discussed what they like or don't like about their classmates' proposed plans, they can
re-examine them and make improvements. Are there other things they'd like to do? Do they have new
goals? Give them several minutes to make improvements to their plans before deciding on a final version.
Bring the class back together and have them record the different steps of the problem solving process that
they used in their activity guides.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was not well-defined. They needed to decide for themselves what a "good" room
looked like, and this definition could have even shifted throughout the process.
Prepare: Narrowing down a list of possible layout is helpful. You may also choose to make the point
that this entire activity is an example of preparation. Some layouts just don't make sense or others
work better, so you need to do the kind of planning they're doing here.
Try: As before, patience and persistence is important to see your plan through
Reflect: In this problem reflection came primarily through feedback from peers. Some layouts might not
end up being that interesting to other group members. Some are fun but require too much moving or
too many new things. Feedback is an important part of the reflect step, especially in group work.
Wrap Up (5 minutes)
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Journal Prompt: The problem solving process is particularly helpful when we encounter poorly-defined
problems. We saw today that without a well-defined problem the rest of the problem solving process is
difficult to follow. What are some questions or strategies we can use to help us better understand and
define problems before we try to solve them?
Discuss: Have groups share quickly before taking suggestions from the class as a whole.
Discussion Goal: There are many different strategies to help define problems, including the questions in the
previous lesson's activity guide. Some potentially useful questions include:
Who in particular the problem affects. What specifically do they need? In what kind of situations?
Why the problem exists? (And why does that problem exist?) Keep asking to get to the heart of the
problem.
How could I be able to tell the problem had been solved? What could I observe or measure?
Remarks
Excellent work everyone. We now understand a great deal about the problem solving process. This is
going to be an incredibly useful tool that we'll use repeatedly throughout the year as we dig deeper into
understanding the world of computer science.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 4: What is a Computer?
45 minutes
Overview Objectives
This lesson builds on the problem-solving theme of the Students will be able to:
earlier lessons and focuses on the specifics of how
computing is used in problem-solving, starting with Choose problems that can be
developing a preliminary definition of a computer. To begin solved with computing and justify
the lesson, the class will brainstorm possible definitions for those choices.
a computer and place the results of this brainstorm on the Identify a computer as a machine
board. Next, students will work in groups to sort pictures that works with information
into “is a computer” or “is not a computer” on poster Reason about whether particular
paper. Groups will place their posters around the room and objects are or are not computers.
briefly explain their motivations for choosing some of their
most difficult categorizations. The teacher will then
introduce a definition of the computer and allow students
to revise their posters according to the new definition.
Preparation
Question of the Day: What is a computer? For each group
Print out copies of the activity
guide. Note there are two sets of
Standards Full Course Alignment pictures, but each group only
needs a single set.
CSTA K-12 Computer Science Standards (2017) Scissors (if you will not have time to
CS - Computing Systems cut the pictures prior to class)
Poster paper
Agenda Markers or colored pencils
Glue or tape to attach pictures
Warm Up (5 minutes) For the teacher
Computers then and now
Check the "Teacher's Lounge"
Activity (35 minutes) forum for verified teachers to find
Computer or Not? additional strategies or resources
Present Your Categorizations shared by fellow teachers
Wrap Up (5 minutes) If you are teaching virtually,
Journal consider checking our Virtual
Lesson Modifications
Links
Heads Up! Please make a copy of
any documents you plan to share
with students.
Teaching Guide
Warm Up (5 minutes)
Computers then and now
Journal Prompt: This picture shows one of the world's first computers, and two of the world's first
computer programmers. What are three ways this computer is different from computers that we use
today? What are two ways that it is the same? What is one thing you think is true of ALL computers?
Discuss: Once students have reflected in their journals, they can share out their ideas "popcorn" style, with
each student who shares an idea calling on a new classmate to share next. Run this conversation as a
brainstorm, recording ideas on the board. Note and call out similarities in characteristics. Students may
come up with counter examples for some of the common characteristics. Remind them that you are
brainstorming and that it's important to consider all of the possible ideas, and that they will have more time
to think about this question in the lesson.
Discussion Goal: This warm-up starts students thinking about what the defining characteristics of a
computer are. Students do not need to have a definition of a computer, but they should start to think about
the different types of computers in their lives and what they have in common.
Note: The programmers pictured are Elizabeth Jean Jennings Bartik and Frances Bilas Spence. The
computer pictured is the ENIAC.
Remarks
Computers come in all different forms, and they've changed a lot over the years. Today we're going to
think about what makes something a computer.
Modifications from the Forum: Many teachers have shared ideas for extending modifying lessons on
the forum ). Head there to check out ways teachers have reduced printables, integrated
(link
technology, or otherwise adapted this activity to fit the needs of their class. If you do something new,
share your ideas too!
At the end of the time bring the class back together and ask them to place their posters at the front of the
room.
Comparing Categorizations: There are two different sets of objects in the activity guide. The first page
of each set is identical while the second pages are different. This will mean all students will see some
objects that they categorized already and some that are new. Use this to help drive conversation.
Remarks
As you can see, it's not always clear whether something is a computer, and even experts sometimes have
different points of view. Let's have a look, however, at a definition that we'll use throughout this course.
The video presents a computer as a machine that helps with certain kinds of thinking work by manipulating
information. You may want to present the definition as "a machine that works with information".
Teaching Tip
To encourage active engagement and reflection, use one or more of the strategies discussed in the
Guide to Curriculum Videos.
Rather than looking at how particular items are categorized, check students' reasoning about whether a
device is a computer. Make sure that they are mentioning that it manipulates information or solves
information (or thinking) problems, and prompt them with the scaffolding questions if they are unable
to give a sufficient definition.
It may be impossible to tell from the picture alone whether or not an item is a computer. Reassure the
class that even experts often disagree about what exactly is or is not a computer.
Wrap Up (5 minutes)
Question of the Day: What is a computer?
Key Vocabulary:
computer: - a machine that works with information
Journal
Prompt: Today you've had a chance to look at a definition of a computer that focuses on how the
computer solves problems. We've also seen many different types of computers. In your journal, think of a
problem that a computer can help you to solve.
What is the information problem?
What information does the computer need to solve that problem?
What type of thinking work does the computer need to do to solve the problem?
Teaching Tip
Identifying Information Problems: Students are still developing an understanding of what information is
or what an information problem that a computer could help solve looks like. Have students share their
ideas if you like but frame the conversation as a first investigation of this question since they'll return to
it repeatedly for the rest of the unit.
Assessment Opportunity
Check that the students have chosen information problems and have described how information can be
used to solve the problem. The answers do not need to be specific enough to program into a computer,
but should give enough of a general description to justify that it is an information (or computational)
problem.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 5: Input and Output
45 minutes
Overview Objectives
This lesson introduces focuses on two of the features Students will be able to:
identified in the previous lesson, input and output, that can
help classify devices as a computer and has students Explain the role that input and
identify different methods of input or output in common output take when computers are
apps. In this lesson, students consider how computers get used to solve information
and give information to the user through inputs and problems.
outputs. Students first consider what information they Select the inputs and outputs used
would need to solve a "thinking problem", then use that to perform common computing
information to produce a recommendation. They then tasks
identify the inputs and outputs of that process. Afterward,
students consider an app that engages in the same
process and determine how that app inputs and outputs
information. Last, they consider other types of inputs and
Preparation
outputs that computers can use to help solve problems. Prepare copies of the activity guide
Question of the Day: How do computers use input and Check the "Teacher's Lounge"
output to get and give the information that they need to forum for verified teachers to find
solve problems? additional strategies or resources
shared by fellow teachers
If you are teaching virtually,
Standards Full Course Alignment consider checking our Virtual
Lesson Modifications
CSTA K-12 Computer Science Standards (2017)
CS - Computing Systems
Links
Agenda Heads Up! Please make a copy of
any documents you plan to share
Warm Up (5 minutes) with students.
Recommending a Pet
Activity (35 minutes) For the teachers
Inputs and Outputs Input and Output - Slides
Pet Chooser Make a Copy
Story Creator
Improved Pet App For the students
Wrap Up (5 minutes) Input and Output - Activity Guide
What Inputs and Outputs Do I Use? Make a Copy
Vocabulary
Input - the information computers
get from users, devices, or other
computers
Output - the information
computers give to users, devices,
or other computers
Teaching Guide
Warm Up (5 minutes)
Recommending a Pet
Journal
Prompt: Imagine that you are going to recommend a pet to someone. What are three questions you would
ask them to help make that recommendation?
Give students time to write down their three questions.
Remarks
In the last lesson we learned that a computer is a machine that "works with information". Right now, we're
going to work with information to make a pet recommendation to a classmate.
Remarks
In order to solve this problem, you had to get information from your partner in the form of answers to
your questions. You also had to give information to your partner in the form of a recommendation.
Computers do the same thing. The information that they get from users is called input, and the
information that they give to users is called output. Lets take a look at an app that also makes pet
recommendations.
Key Vocabulary:
Input - the information computers get from users, devices, or other computers
Output - the information computer give to users, devices, or other computers
Question of the Day: How do computers use input and output to get and give the information that they
need to solve problems?
Activity (35 minutes)
Inputs and Outputs
Distribute: Copies of the activity guide to each pair (or ask them to answer the questions in their journals).
Vocabulary: The two vocabulary words of the day are found on the top of the activity guide.
Sample Apps
Transition: Send pairs to Code Studio.
Teaching Tip
Text-to-Speech Options: The instructions panel includes two options that can support comprehension
for students.
Text to Speech which reads aloud the instructions for students
Microsoft Immersive Reader which opens a new panel for the instructions and gives controls to
change the text size, contrast, or translate to another language.
Click here to learn more about these options
Pet Chooser
Look at the pet chooser app together. Note that it does something very similar to what the students just
did in pairs. As a group, answer the first two questions about the app's input. Make sure students
understand that the app gets the input from the user's behavior, in this case, pressing a button. Depending
on the group, you may want to model the question around output or have students work on it in pairs.
Teaching Tip
Students do not need the exact input for every possible question asked. It's sufficient to say that the
input is information about whether the user has allergies, wants to play with the pet, etc., and that the
app gets this information from the user pressing a button.
Story Creator
Next, allow pairs to look at the story creation app on their own, answering similar questions about its input
and output. This app allows students to put specific information into a form, then generate a personalized
story based on the information provided.
Assessment Opportunity
Ensure that students are identifying appropriate inputs and outputs. Student answers may vary slightly,
but they should be similar to those in the exemplar provided in the "For the teachers" resources section
of the lesson plan.
Student Apps
In pairs or larger groups, students come up with their own app ideas, and decide the types of input and
output that would be needed for those apps.
Share: Allow students to present their app ideas and the inputs and outputs that they would need.
Wrap Up (5 minutes)
Question of the Day: How do computers use input and output to get and give the information that they
need to solve problems?
Use this wrap up activity to assess how well students have understood the role of input and output in
some common activities on a computer. For example:
Typing on a Keyboard (Input) Makes Letters Appear on a Screen (Output)
Moving a Mouse or Touch Screen (Input) Changes What Appears on the Screen (Output)
Pressing play on a touchscreen (Input) Makes a Song Play through the Speakers (Output)
If you need, give students this or other examples to prompt more examples
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 6: Processing
45 minutes
Overview Objectives
This lesson introduces the concept of processing within Students will be able to:
computational problem-solving. While this lesson focuses
on four common types of processing - if/then Define processing as the work
(conditionals), finding a match (searching), counting, and done (possibly by a computer) to
comparing - students should understand that processing is turn an input into an output
whatever a computer does to turn inputs into outputs. Determine which types of
Students are first introduced to the types of processing processing are appropriate for a
through several sample apps. They then investigate more particular computing problem.
apps to determine what sorts of processing each uses. Identify several common types of
They then think of their own app and decide what types of processing used in computing.
processing it would need to work. Finally, they brainstorm
other types of processing that may be useful but were not
included in the main lesson. Preparation
Question of the Day: What are the different ways
computers can process information? Check the "Teacher's Lounge"
forum for verified teachers to find
additional strategies or resources
Standards Full Course Alignment shared by fellow teachers
If you are teaching virtually,
CSTA K-12 Computer Science Standards (2017) consider checking our Virtual
AP - Algorithms & Programming Lesson Modifications
CS - Computing Systems
Links
Agenda Heads Up! Please make a copy of
Warm Up (5 minutes) any documents you plan to share
Analyzing an App (Birthday App) with students.
Activity (35 minutes) For the teachers
Types of Processing
Apps and Processing Apps with Processing - Slides
More Processing Make a Copy
Student Apps For the students
Wrap Up (5 minutes) Apps with Processing - Activity
What Inputs and Outputs Do I Use? Guide Make a Copy
Vocabulary
Processing - The thinking work
computers do to turn input into
output.
Teaching Guide
Warm Up (5 minutes)
Analyzing an App (Birthday App)
Journal Prompt: Go on Code Studio to try out the birthday app. It has three possible outputs. Try to find
each one.
1. What is the input to the app?
2. What is the output?
3. How do you think the app decides which output to give back to the user?
Circulate: The first part of this reflection serves as a review of input and output. As students reflect on the
prompt, check their answers to ensure that they understand how input and output are used in the app.
Content Corner
Students may identify the user's birthdate as one input and possibly the current date as another input.
The message of whether or not it is the birthday is the output. The decision of which message to output
is based on whether the current date matches the date that the user inputs.
Ask students to share out how they thought the app made the decision.
Discussion Goal: Students may have trouble articulating exactly how the app makes its decision. Encourage
discussion and highlight the "matching" and "if/then" facets of the decision make process. (e.g. "The app
compares the birthdate to today's date." / If the birthdate is the same as today's date, then display "Happy
Birthday!")
Remarks
In the past few lessons, we learned that computers are machines that help us with thinking work by
turning input into output. For example, the thinking work this app did was to compare the birthdate to
today's date, and to use that information to decide what to display on the screen. These types of thinking
work computers do are called "processing." We are going to look at some different types of processing
today.
Key Vocabulary:
Processing - the thinking work computers do to turn input into output
Question of the Day: What are the different ways computers can process information?
Activity (35 minutes)
Types of Processing
Remarks
We've already seen two different types of processing in the Birthday App: comparing and if/then. We're
going to look at a couple other apps and see what kinds of processing they might use.
Display: Demonstrate the "National Park " app at the front of the room, or allow students to explore the
app on their own.
Prompt: How does this app use if/then and comparing to turn the input into output?
Discussion Goal: Allow students to share out their answers, and reinforce that comparing can mean
deciding whether any two things are the same, not just numbers.
Display: Demonstrate the "How Many Countries..." app at the front of the room, or allow students to
explore the app on their own.
Prompt: This app uses some different types of processing to make decisions. What kinds of processing
might it use?
Discussion Goal: Allow students to share out their answers, but make sure that the "counting" and the "find
a match" are highlighted in the discussion.
Remarks
There are lots of different types of processing that computers can use. Today, we are going to focus on
four basic types: If/then, comparing, finding a match, and counting.
Display: Display the four types of processing and their definitions at the front of the room, and review the
information with the students.
Group: Put students in groups of 2-3. Each group will need access to one computer for this activity.
Distribute: Give each group one copy of the activity guide.
My Famous Birthday
This app asks users to input their birthday, then tells them the day of the week that they are born and a
famous author born on that same day. The type of processing is included in the "teacher only" notes in the
level.
Stamp Notebook
This app allows users to click on an icon and "stamp" that icon on the display screen. Clicking an icon more
than once changes the color of the stamp.
More Processing
The next chart asks students to find two types of processing for every app. The explanations for
processing are included in the For Teachers Only section in Code Studio. This section asks students to
evaluate more complex apps, which may be difficult for younger students. Feel free to skip this more
challenging section and move directly to the "student app" section.
The Fastest Finger
This app displays which key is being pressed the fastest, the 's' key or the 'k' key.
Guess the Number
This app asks users to guess a number between one and one hundred, and displays whether the guess is
too high, too low, or correct.
Where Should I Live?
This app gives the user advice on where to live based on the answers to a few questions.
Wrap Up (5 minutes)
What Inputs and Outputs Do I Use?
Prompt: We saw four different types of processing today, but there are many more.
1. What s another type of processing that you think would be useful?
’
Students' answers will vary, but make sure that they are reasonably using processing to change an
input into an output.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 7: Storage
45 minutes
Overview Objectives
This lesson introduces the final component of the unit's Students will be able to:
model of computing: storage. After trying out an "outfit
picker" app, students discuss what information should be Determine which information in a
stored in the app versus input every time the app is run. computing problem should be
They then look at a series of apps and use their decisions stored for later use.
about what should be stored to create guidelines for Identify guidelines regarding what
deciding what information to store. They then review the information should and should not
four components of this chapter's model of computing: be stored as part of the computing
input, output, storage, and processing. Afterward, they process.
have one last opportunity to revise their decisions about Use the input-output-storage-
which items should be classified as a "computer" from
earlier in the chapter. The lesson ends with a reflection on processing model to describe a
their own app ideas and how storage could be used. computing process.
Question of the Day: Why is storage an important part of
the computing process? Preparation
Print a copy of the activity guide
Standards Full Course Alignment for each student
Check the "Teacher's Lounge"
CSTA K-12 Computer Science Standards (2017) forum for verified teachers to find
AP - Algorithms & Programming additional strategies or resources
IC - Impacts of Computing shared by fellow teachers
If you are teaching virtually,
consider checking our Virtual
Agenda Lesson Modifications
Warm Up (5 minutes)
Analyzing an App (Outfit Picker) Links
Activity (35 minutes)
Apps with Storage Heads Up! Please make a copy of
any documents you plan to share
Outfit Picker with students.
Friend Finder
Choose a Kid's Movie For the teachers
Guidelines
Apps with Storage - Slides
Introducing the IOSP Model Make a Copy
Wrap Up (5 minutes) For the students
Journal
Apps with Storage - Activity Guide
Make a Copy
What Do Computers Do - Video
(Download)
Vocabulary
storage - saving information to use
in the future
Teaching Guide
Warm Up (5 minutes)
Analyzing an App (Outfit Picker)
Journal Prompt: Go on Code Studio to look at the outfit picker app. What is one input, one output, and one
kind of processing it might use? Let’s say you used this app every day. What information would you want
this app to remember?
Circulate: The first part of this reflection serves as a review of input, output, and processing. As students
reflect on the prompt, check their answers to ensure that they understand how input, output, and
processing are used in the app.
Content Corner
Students may identify the weather, favorite color, or season as the input, and the pictures of outfits as
the output. Although the exact processing of the app may not be clear, students may point out that
there are several likely if/then scenarios ("If the weather is rainy, then include an umbrella.") or matching
between the user's input and features of the outfits.
Discuss: Ask students to share out what information they thought should be stored and why.
Discussion Goal: While it's not important that students agree on the answers, this discussion introduces
them to the idea of storing information for later and prompts them to think about what information should
and should not be stored in an app.
Remarks
This example app asks for some information that won't change very often, such as your favorite color.
Instead of being required to enter this data every time, it would be helpful if the app could remember our
answers by storing it. All computers can save information for later and read saved information through
storage.
Key Vocabulary:
Storage - saving information to use in the future
Question of the Day: Why is storage an important part of the computing process?
Group: Put students in groups of 2-3. Each group will need access to one computer for this activity.
Distribute: Give each group one copy of the activity guide.
As a class, complete the first section of the activity guide, which references the outfit picker app used in
the warm-up.
Send students to Code Studio to see the sample apps.
Circulate: Allow students to complete the rest of the activity guide in their groups. As they fill out the
charts, ask them to elaborate on why they thought each input should be stored or not.
Assessment Opportunity
There is some flexibility about what should and shouldn't be stored, since that is a choice that the app
designer could make. The most important part is their explanation. They should be reasoning about
whether that information will change frequently.
Outfit Picker
The first app asks users to input their favorite color, the current season, and the weather, then outputs a
picture of an outfit based on the user input.
Friend Finder
The second app asks users to input which friends should be on their friends list, then outputs a map that
displays the locations of the friends on the list.
Guidelines
As groups move on to the final activity, you may need to briefly explain what a guideline is and what the
question is asking for. Make sure that all groups have time to come up with guidelines, even if they have to
skip parts of the earlier chart.
Circulate: If groups get stuck writing their guidelines, ask them about which inputs they said should be
stored in the other apps. Ask them to see if they can find any similarities between which inputs were stored
and were not stored. Remind them that they can also write guidelines about which inputs were not stored.
Assessment Opportunity
Student answers may vary, but in general, they should realize that whether information should or should
not be stored relates to how frequently it changes, if changes at all.
Once most of the groups are done writing their guidelines, bring the class back together and ask if any
group would like to share one of their guidelines.
Display: Show students the What Do Computers Do video in the slides which introduces the IOSP
model.
Prompt for discussion with two discussion questions.
Teaching Tip
If you are using journaling, prompt the students to write their answers down in their journals.
To encourage active engagement and reflection, use one or more of the strategies discussed in the
Guide to Curriculum Videos.
1. Think of something you do on the computer. What sort of input, output, storage, and processing are
happening?
2. What kinds of input, output, storage, and processing are used in a modern smartphone?
Finally, look at the poster from the "What is a Computer?" lesson and check to see if any of the machines
should be reclassified as computers or not computers based on this new IOSP model.
Assessment Opportunity
You can use the two journal prompts here to asses students' ability to identify the different parts of
IOSP in an app they commonly use and in a smartphone.
Wrap Up (5 minutes)
Journal
Prompt: Think of an app you would like to make. What information would it store?
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 8: Project - Propose an App
225 minutes
Overview Objectives
To conclude this unit, this project combines the two major Students will be able to:
themes of Unit 1, the problem-solving process and the
input/output/store/process model of a computer, to have Design an app that inputs, outputs,
students identify real-world problems and find ways to use stores, and processes information
technology to help solve them. This project will be in order to solve a problem
completed across multiple days and will result in students Identify and define a problem that
creating a poster of a proposed app they design to solve a could be solved using computing
real-world problem, highlighting the features of their app Provide and incorporate targeted
that they will present to their classmates. A project guide peer feedback to improve a
provides step-by-step instructions for students and helps computing artifact
them organize their thoughts. The project is designed to be
completed in pairs though it can be completed individually.
Question of the Day: How can the IOSP model help us to Preparation
design an app that solves a problem?
Print a copy of Apps and Problem
Solving for each pair of students
Standards Full Course Alignment Poster paper, pens, markers and
other supplies for making posters
CSTA K-12 Computer Science Standards (2017) Check the "Teacher's Lounge"
AP - Algorithms & Programming forum for verified teachers to find
CS - Computing Systems additional strategies or resources
shared by fellow teachers
If you are teaching virtually,
Agenda consider checking our Virtual
Lesson Modifications
Warm Up (5 minutes)
Introduce the Project
Activity (215 minutes)
Links
Project Guide Heads Up! Please make a copy of
Presenting Apps any documents you plan to share
Wrap Up (5 minutes) with students.
Reflection
Teacher End-Of-Unit Survey For the teachers
Extended Learning Project - Propose an App - Slides
Shark Tank Make a Copy
Post-Project Test For the students
Apps and Problem Solving -
Activity Guide Make a Copy
Apps and Problem Solving - Peer
Review Make a Copy
Apps and Problem Solving - Rubric
Make a Copy
Apps and Problem Solving -
Student Checklist - Resource
Make a Copy
Computer Science Practices -
Reflection Make a Copy
Teaching Guide
Warm Up (5 minutes)
Introduce the Project
Prompt: Of the apps we've seen in this unit, what was your favorite? What problem did it solve?
Share: Allows students to share out their favorite apps.
Remarks
This whole unit we’ve been learning about the problem solving process and how computers process
information to help solve problems by taking inputs and processing them to create useful outputs. Today
we're going to start a project where you and a partner will design an app to solve a problem of your
choosing.
Question of the Day: How can the IOSP model help us to design an app that solves a problem?
Creating Groups: Ideally, this project is done in pairs. If need be, groups of 3 will work. You should
decide beforehand whether you will assign or allow students to pick their partners.
Facilitating Group Projects: If students are working in pairs or small teams to complete projects,
consider showing these two videos to the class:
How Teamwork Works
Dealing with Disagreements
Depending on your goals with this project, consider having teams complete a Student Guide to Team
Planning, which reinforces the message in the video
Step 2: Brainstorm Problems: Prompt groups to spend several minutes silently brainstorming problems and
recording them on their project guides. Circulate the room and remind them that at this point they
shouldn't be thinking about an app they want to build or even whether it's possible to solve this problem
with an app. Make sure they're beginning with the problem rather than the solution.
Teaching Tip
Helping the Brainstorm: Listen carefully to student conversations. Identify students who are stuck, and
the reason why they are stuck. Are they thinking too big? Help those students to think about problems
as annoyances or inconveniences, or an opportunity to improve your quality of life to a small or big
degree.
Step 3: Choose Your Problem: The project guide provides several criteria students can use to assess which
of their problems they'd like to address. Ask students to look forward to Step 4 if they need more guidance
on how they'll need to define or scope their problems. Give students a few minutes to discuss with their
group and choose the problem they'd like to address with their app.
Step 4: Define Your Problem: For this step students will need to appropriately scope their problem by
defining who their audience is, what specifically is the problem, and how they will know they have fixed it.
Teaching Tip
How Much to Help: At this point students have had a lot of practice defining problems. They also have a
peer review process shortly after this step. Encourage them to be as detailed as possible but avoid
giving specific advice for how to define their problem.
Step 5: Your App: Once students have scoped their problem, ask them to discuss an app that could be
used to help solve their problem. To begin they'll just need to provide a high level description of the app
that describes how a user would use it and what it does.
Teaching Tip
What Kind of App?: This project is supposed to result in a simple app, along the lines of those seen in
the previous lesson. Even large problems or parts of large problems can be addressed by collecting and
processing information appropriately.
Scoping Student Projects: Students may ideate projects that are beyond the skills they currently have
or that would take longer than the allotted time to implement. Rather than asking students to choose a
different project, consider asking students to imagine a more scaled-down version of their initial idea.
As an analogy, if students initial idea is the "Run" step, imagine a less intense version that represents
what the "Walk" step would look like. If necessary, you can keep going back further to a "Crawl" step as
well.
Digging Deeper: This is sometimes referred to as the Minimal Viable Product - you can learn more
about this process and adapt it into your project strategies by reading this article: Making Sense of
MVP by Henrik Kniberg
Step 6: Input, Output, Store, Process: In this step students design the way their app will actually work to
process data.
First students will draw and then describe the outputs of their apps. On the left side they can make a rough
sketch of what their app would look like. This does not need to be a final draft and is just there to help
them brainstorm ideas and communicate to another group how their app would look. On the right side they
have space to label each individual piece of information on the screen.
Using the outputs that students selected as a guide, students should pick the inputs they'll need to create
them. Only 6 spaces are provided though students could opt to choose more. This is somewhat intentional
to help students scope the functionality of their app.
Students will describe the way their app processes data using as a model the way they would process it
themselves. The goal here is primarily just to ensure students have selected inputs that could be processed
to produce the outputs. For example, if they're finding a list of friends with birthdays this month then both
a computer and human would need to know a list of friends' birthdays and the current month.
Lastly students are asked to decide what information, if any, it makes sense to store long term.
Distribute: Apps and Problem Solving - Peer Review, one copy to each pair of students
Step 7: Peer Review: Each group should trade their project guides with another. They should fill out the
first line of the peer review which asks what specific part of their project they'd like feedback on.
Afterward, there are a number of directed questions as well as a chance to provide more open-ended
feedback on the idea.
Students should be given their project guides back as well as their peer feedback. On the back, there are
questions where they can indicate what changes or improvements to their projects they intend to make on
their apps based on the feedback.
Step 8: Finalize App and Make Poster: Students should incorporate the ideas of their peers in finalizing
their app idea. They should then make a poster presenting their app following the guidance provided in the
activity guide.
Students should revisit the rubric for this project to see how their project aligns. You may also decide to
distribute the Apps and Problem Solving - Student Checklist so students can self-assess how well their
project meets the requirements for this project.
Teaching Tip
Rubric and Checklist: Students have two resources they can use for self-reflection and making sure
they are on the right track: the rubric and the student checklist. We recommend having students use
the checklist for their own self-assessment and reflection, since it may be easier to digest and
understand when reviewing their own project. However, we recommend teachers use the full rubric for
evaluating projects to give more accurate feedback to students. You can see examples of this with the
Sample Marked Rubrics resource at the top of the lesson plan (only visible to verified teachers)
Assessment Opportunity
Use the project rubric attached to this lesson to assess student mastery of the learning goals of this
unit. You may also choose to assign the post-project test through code studio.
Presenting Apps
Share: Decide if and how students will share their posters with one another. If students will be doing more
formal presentations then use the guidelines provided in Step 9 of the project guide to structure the
presentations.
Collect: At the end of the presentation collect the completed project guides, peer feedback forms, and
posters from each group.
Wrap Up (5 minutes)
Reflection
Question of the Day: How can the IOSP model help us to design an app that solves a problem?
Reflect: Students reflect on the following question in their journals:
What are you most proud of in your project?
Send students to Code Studio to complete their reflection on their attitudes toward computer science.
Although their answers are anonymous, the aggregated data will be available to you once at least five
students have completed the survey.
1 ● End-of-Unit Survey
✓
Extended Learning
Shark Tank
Run a mock “Shark Tank” as the backdrop for this unit project. Some things to consider:
Is the culture of your class one where this competition can remain at a healthy level?
Invite faculty / staff, local residents, or other professionals to hear the Phase 2 presentations and
decide on a first, second, third place idea.
Invite local business people / other professionals to share during Day 1 or Day 2 so students can see
how computer science relates to jobs in their community.
Post-Project Test
Post-Project tests are included at the end of every unit. These include several multiple choice and matching
questions as well as open ended reflections on the final project of the unit. These tests are aligned to the
learning framework of each unit and are designed to assess parts of the framework that may not have
been covered by the project rubrics. To holistically assess the learning objectives of the unit, the post-
project test should be paired with the end-of-unit project which is the primary student assessment in each
unit.
Unlocking The Tests: This test is locked and hidden from student view by default. In order for students to
see and take this test, you'll need to unlock it by clicking the "Lock Settings" button and following the
instructions that appear. Click here for more information about unlocking and admistering assessments
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 9: Intro to Problem Solving -
Newspaper Table (Alternate Lesson 1)
45 minutes
Overview Objectives
This lesson is a fun introduction to the open-ended, Students will be able to:
collaborative, and creative problem-solving students will be
using over the rest of this unit and course. In this lesson, Communicate and collaborate with
students work in groups to design newspaper tables that classmates in order to solve a
will hold as many books as possible. Groups have two problem
rounds to work on their tables, with the goal of trying to Identify different strategies used to
hold more books than they did in the first round. The solve a problem
structure of the activity foreshadows different steps of the Iteratively improve a solution to a
problem-solving process that students will be introduced to problem
in more detail in the following lesson. At the end of the
lesson, students reflect on their experiences with the
activity and make connections to the types of problem-
solving they will be doing for the rest of the course.
Preparation
Question of the Day: What can help us to work together For each group
and solve problems as a team? 2 full newspapers for each group of
This is an alternate activity to Intro to Problem Solving - students
Aluminum Boats 1 roll of tape for each group of
students
One copy of the activity guide
Standards Full Course Alignment
For the teacher
CSTA K-12 Computer Science Standards (2017) 10-20 books of similar weight.
AP - Algorithms & Programming Check the "Teacher's Lounge"
forum for verified teachers to find
additional strategies or resources
Agenda shared by fellow teachers
Tech Setup If you are teaching virtually,
consider checking our Virtual
Warm Up (5 minutes) Lesson Modifications
Set the Stage
Activity (35 minutes)
Building a Newspaper Table
Links
Goal and Rules Heads Up! Please make a copy of
Develop a Plan any documents you plan to share
Test Your Table with students.
Evaluate and Improve
Wrap Up (5 minutes) For the teachers
Discuss the Challenge Code.org How-to Videos
Intro to Problem Solving
(Newspapers) - Slides
Make a Copy
Teaching Guide
Tech Setup
Throughout the year, in order for you to be able to see student work, and for students to be able to access
online tools and resources, all students need to be in the same section on Code Studio. To see
assessments and answer keys that Code.org provides, you also need to be a "verified teacher".
Teaching Tip
How-To Videos: The following steps are also covered in a series of Code.org How-to Videos available
on Code.org's Teacher Support website. You may decide to watch these videos before reading the
instructions below.
Warm Up (5 minutes)
Set the Stage
Prompt: What makes someone a good problem solver? Be ready to share three ideas with your group.
Teaching Tip
Journaling: Journaling is a key practice in CS Discoveries. Students can journal on loose leaf paper, in
notebooks, or digitally.
Slides: Slides for this unit are available in the "Teacher Resources" section of the lesson plan. You will be
prompted to make a copy, which you will only need to do once - after that, you may use the slides for
each lesson in the curriculum.
Discuss: Allow students to share answers at their table groups or with a partner, then have those who are
comfortable share with the whole class.
Discussion Goal: The goal of this warm-up is to start students thinking about problem-solving in
preparation for the day's activity. Highlight answers that reinforce key practices in the class, such as
collaboration, persistence, and creativity. This is also a chance to reinforce a positive culture that
encourages students to share out and support each other in brainstorming ideas.
Remarks
Those are all great ideas! In computer science, we have to solve problems all of the time, so we'll be
looking back at all of these problem solving skills today and for the rest of the course. Most of the
problem solving that people do in computer science happens in teams. Today, we're going to work in
teams to solve a fun problem that doesn't need computers. While you work on that problem, here's a
question that you can think about.
Remarks
Today we're going to be building tables out of newspaper and tape. Each table should hold books at
least one foot off the ground. You'll have an opportunity to build at least two tables and use your
experience with each one to improve your designs. Before we get started, decide as a group what kind of
design you'd like to make with your first table. Record your ideas and any possible weaknesses of this
design on your activity guide.
This activity can take some space. You may also want to consider running this activity in the hallway or
some other space if your room is very restrictive, or add in additional rules as necessary.
Develop a Plan
Give students a couple minutes to discuss in groups the approach they will be taking with this first table.
Once groups have recorded their ideas and some possible weaknesses they can come to you to get their
newspaper and tape and begin building their tables.
Teaching Tip
Hold onto the supplies until students submit a plan for their table. The goal isn't to slow them down too
much, but just give them a moment to reflect briefly on the possible approaches they could take. This is
one way this activity foreshadows the Planning step of the problem solving process students will see in
subsequent lessons.
Share: Have students share the results of their first run with neighboring groups. Ask groups to focus
particularly on what the eventual failure of their table was (e.g. it wasn't wide enough, it was unstable, etc.)
and brainstorm ways to get around those problems.
Teaching Tip
While some students will view this portion as a competition, emphasize that each group is looking to
improve its own design, not competing against others. You are appealing for each student to challenge
themselves first, not others.
Develop a Plan
Remarks
Now that you've had a chance to learn from the first round of table making, let's run the same activity
again. First, your group will develop a new plan. Just as before, record it on your activity guide, and once
you're ready I'll come around and give you a new newspaper.
Support : As you circulate from group to group, ask questions about the group’s focus in redesign. EX:
“What aspect of your table needed the most improvement?” “What ideas from other groups did you want
to incorporate to yours?” “Did you feel the need to completely restructure your table, or make minor
modifications?”
Once groups have prepared their new plans give them a new newspaper and have them each build a new
table.
Assessment Opportunity
You can check for strengths and weaknesses in students' original design and connection to appropriate
changes for the next iteration of the project in the Activity Guide.
Identify different strategies used to solve a problem
You also may want to check the "strengths" of their designs that students list as part of developing their
plan on the second page of the guide.
Reflect
Transition : Ask class to return to their own seats to reflect on the activity.
Wrap Up (5 minutes)
Discuss the Challenge
Question of the Day: What can help us to work together and solve problems as a team?
Prompt: You worked in teams for this activity. How did working in a team make this activity easier, how did
it make the activity more challenging? What helped your group overcome these challenges?
Discuss: Allow students time to share thoughts with the class.
Assessment Opportunity
Students may recognize that collaboration allowed them to think through their ideas more thoroughly
or that they were able to split up the work that they needed to do. As students list challenges, ensure
that they are coming up with ways to overcome those challenges. If you have noticed any issues in
group dynamics during the activity, you may want to use this time to bring up these as potential
problems in a non-confrontational way and help students to generate strategies for working together
more effectively in future activities. These can serve as classroom norms for group work moving
forward.
Remarks
All of your thoughts around these questions were great. We're going to be doing a lot of teamwork in this
class. You may be used to thinking about computer science as being all about computers, but first and
foremost computer science is about solving problems, and usually that happens in teams. A lot of other
parts of this activity like improving designs, and building things is also going to be a big part of this class. I
hope you're excited for the year. Tomorrow we'll start digging deeper into problem solving itself.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 10: Intro to Problem Solving -
Spaghetti Bridge (Alternate Lesson 1)
45 minutes
Overview Objectives
This lesson is a fun introduction to the open-ended, Students will be able to:
collaborative, and creative problem-solving students will be
using over the rest of this unit and course. In this lesson, Communicate and collaborate with
students work in groups to design spaghetti bridges that classmates in order to solve a
will support as many books as possible. Groups have two problem
rounds to work on their bridges, with the goal of trying to Identify different strategies used to
hold more books than they did in Round 1. The structure of solve a problem
the activity foreshadows different steps of the problem- Iteratively improve a solution to a
solving process that students will be introduced to in more problem
detail in the following lesson. At the end of the lesson,
students reflect on their experiences with the activity and
make connections to the types of problem solving they will
be doing for the rest of the course.
Preparation
Question of the Day: What can help us to work together For each group
and solve problems as a team? 1 pound of dry spaghetti noodles
This is an alternate activity to Intro to Problem Solving - (about 1 box)
Aluminum Boats 1 glue gun
One copy of the activity guide
For the teacher
Standards Full Course Alignment
10-20 books of similar size and
CSTA K-12 Computer Science Standards (2017) weight
AP - Algorithms & Programming Check the "Teacher's Lounge"
forum for verified teachers to find
additional strategies or resources
Agenda shared by fellow teachers
Tech Setup If you are teaching virtually,
consider checking our Virtual
Warm Up (5 minutes) Lesson Modifications
Set the Stage
Activity (35 minutes)
Building a Spaghetti Bridge
Links
Goal and Rules Heads Up! Please make a copy of
Develop a Plan any documents you plan to share
Test Your Bridge with students.
Evaluate and Improve
Test Your Table For the teachers
Reflect
Code.org How-to Videos
Wrap Up (5 minutes)
Discuss the Challenge Intro to Problem Solving
(Spaghetti) - Slides
Make a Copy
For the students
Spaghetti Bridge - Activity Guide -
Activity Guide Make a Copy
Teaching Guide
Tech Setup
Throughout the year, in order for you to be able to see student work, and for students to be able to access
online tools and resources, all students need to be in the same section on Code Studio. To see
assessments and answer keys that Code.org provides, you also need to be a "verified teacher".
Teaching Tip
How-To Videos: The following steps are also covered in a series of Code.org How-to Videos available
on Code.org's Teacher Support website. You may decide to watch these videos before reading the
instructions below.
Warm Up (5 minutes)
Set the Stage
Prompt: What makes someone a good problem solver? Be ready to share three ideas with your group.
Teaching Tip
Journaling: Journaling is a key practice in CS Discoveries. Students can journal on loose leaf paper, in
notebooks, or digitally.
Slides: Slides for this unit are available in the "Teacher Resources" section of the lesson plan. You will be
prompted to make a copy, which you will only need to do once - after that, you may use the slides for
each lesson in the curriculum.
Discuss: Allow students to share answers at their table groups or with a partner, then have those who are
comfortable share with the whole class.
Discussion Goal: The goal of this warm-up is to start students thinking about problem-solving in
preparation for the day's activity. Highlight answers that reinforce key practices in the class, such as
collaboration, persistence, and creativity. This is also a chance to reinforce a positive culture that
encourages students to share out and support each other in brainstorming ideas.
Remarks
Those are all great ideas! In computer science, we have to solve problems all of the time, so we'll be
looking back at all of these problem solving skills today and for the rest of the course. Most of the
problem solving that people do in computer science happens in teams. Today, we're going to work in
teams to solve a fun problem that doesn't need computers. While you work on that problem, here's a
question that you can think about.
Remarks
Today we're going to be building spaghetti bridges. Each bridge will need to cross a 1-foot (or 30cm) gap
and hold as many books as possible. You'll have an opportunity to build at least two bridges and use your
experience with each one to improve your designs. Before we get started, decide as a group what kind of
design you'd like to make with your first bridge. Record your ideas and any possible weaknesses of this
design on your activity guide.
This activity can take some space and can get a little messy. You may also want to consider teaching
this activity in the hallway or some other space if your room is very restrictive, or add in additional rules
as necessary.
Develop a Plan
Give students a couple minutes to discuss in groups the approach they will be taking with this first bridge.
Once groups have recorded their ideas and some possible weaknesses they can come to you to get their
spaghetti and begin building their bridges. Give about 1/2 pound of spaghetti to each group.
Teaching Tip
Hold onto the supplies until students submit a plan for their bridge. The goal isn't to slow them down
too much, but just give them a moment to reflect briefly on the possible approaches they could take.
This is one way this activity foreshadows the Planning step of the problem solving process students will
see in subsequent lessons.
Share: Have students share the results of their first run with neighboring groups. Ask groups to focus
particularly on what the eventual failure of their bridge was (e.g. it wasn't long enough, it was unstable,
etc.) and brainstorm ways to get around those problems.
Teaching Tip
While some students will view this portion as a competition, emphasize that each group is looking to
improve its own design, not competing against others. You are appealing for each student to challenge
themselves first, not others.
If running this activity over two days, you may choose to break here.
Develop a Plan
Remarks
Now that you've had a chance to learn from the first round of bridge making, let's run the same activity
again. First, your group will develop a new plan. Just as before, record it on your activity guide, and once
you're ready I'll come around and give you new spaghetti.
Support : As you circulate from group to group, ask questions about the group’s focus in redesign. EX:
“What aspect of your bridge needed the most improvement?” “What ideas from other groups did you
want to incorporate to yours?” “Did you feel the need to completely restructure your bridge, or make
minor modifications?”
Once groups have prepared their new plans give them more spaghetti and have them each build a new
bridge.
Assessment Opportunity
You can check for strengths and weaknesses in students' original design and connection to appropriate
changes for the next iteration of the project in their Activity Guide.
Identify different strategies used to solve a problem
You also may want to check the "strengths" of their designs that students list as part of developing their
plan on the second page of the guide.
Reflect
Transition : Ask class to return to their own seats to reflect on the activity.
Wrap Up (5 minutes)
Discuss the Challenge
Question of the Day: What can help us to work together and solve problems as a team?
Prompt: You worked in teams for this activity. How did working in a team make this activity easier, how did
it make the activity more challenging? What helped your group overcome these challenges?
Discuss: Allow students time to share thoughts with the class.
Assessment Opportunity
Students may recognize that collaboration allowed them to think through their ideas more thoroughly
or that they were able to split up the work that they needed to do. As students list challenges, ensure
that they are coming up with ways to overcome those challenges. If you have noticed any issues in
group dynamics during the activity, you may want to use this time to bring up these as potential
problems in a non-confrontational way and help students to generate strategies for working together
more effectively in future activities. These can serve as classroom norms for group work moving
forward.
Remarks
All of your thoughts around these questions were great. We're going to be doing a lot of teamwork in this
class. You may be used to thinking about computer science as being all about computers, but first and
foremost computer science is about solving problems, and usually that happens in teams. A lot of other
parts of this activity like improving designs, and building things is also going to be a big part of this class. I
hope you're excited for the year. Tomorrow we'll start digging deeper into problem solving itself.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 11: Intro to Problem Solving -
Paper Tower (Alternate Lesson 1)
45 minutes
Overview Objectives
This lesson is a fun introduction to the open-ended, Students will be able to:
collaborative, and creative problem-solving students will be
using over the rest of this unit and course. In this lesson, Communicate and collaborate with
students work in groups to design paper towers that can classmates in order to solve a
stand as high as possible. Groups have two rounds to work problem
on their towers, with the goal of trying to go higher than Identify different strategies used to
they did in Round 1. The structure of the activity solve a problem
foreshadows different steps of the problem-solving Iteratively improve a solution to a
process that students will be introduced to in more detail in problem
the following lesson. At the end of the lesson, students
reflect on their experiences with the activity and make
connections to the types of problem-solving they will be
doing for the rest of the course.
Preparation
Question of the Day: What can help us to work together For each group
and solve problems as a team? 20 sheets of paper, 8.5 x 11 inches
This is an alternate activity to Intro to Problem Solving - Space to build their tower
Aluminum Boats One copy of the activity guide
For the teacher
Standards Full Course Alignment Extra paper
Timer
CSTA K-12 Computer Science Standards (2017) Ruler
AP - Algorithms & Programming Check the "Teacher's Lounge"
forum for verified teachers to find
additional strategies or resources
Agenda shared by fellow teachers
Tech Setup If you are teaching virtually,
consider checking our Virtual
CSD Pre-Course Survey Lesson Modifications
Warm Up (5 minutes)
Set the Stage Links
Activity (35 minutes)
Building a Paper Tower Heads Up! Please make a copy of
Goal and Rules any documents you plan to share
Develop a Plan with students.
Test Your Table
Evaluate and Improve For the teachers
Wrap Up (5 minutes) Code.org How-to Video Playlist
Discuss the Challenge Intro to Problem Solving (Paper
Towels) - Slides Make a Copy
For the students
Paper Tower - Activity Guide
Make a Copy
Teaching Guide
Tech Setup
Throughout the year, in order for you to be able to see student work, and for students to be able to access
online tools and resources, all students need to be in the same section on Code Studio. To see
assessments and answer keys that Code.org provides, you also need to be a "verified teacher".
Teaching Tip
How-To Videos: The following steps are also covered in a series of Code.org How-to Videos available
on Code.org's Teacher Support website. You may decide to watch these videos before reading the
instructions below.
Warm Up (5 minutes)
Set the Stage
Prompt: What makes someone a good problem solver? Be ready to share three ideas with your group.
Teaching Tip
Journaling: Journaling is a key practice in CS Discoveries. Students can journal on loose leaf paper, in
notebooks, or digitally. See the CSD Guide to Journaling for more information.
Slides: Slides for this unit are available in the "Teacher Resources" section of the lesson plan. If you'd
like to edit your own copy of a slide deck you may without requesting access. Simply log in with a
Google account, click "File" and "Make a copy" from the menu.
Discuss: Allow students to share answers at their table groups or with a partner, then have those who are
comfortable share with the whole class.
Discussion Goal: The goal of this warm-up is to start students thinking about problem-solving in
preparation for the day's activity. Highlight answers that reinforce key practices in the class, such as
collaboration, persistence, and creativity. This is also a chance to reinforce a positive culture that
encourages students to share out and support each other in brainstorming ideas.
Remarks
Those are all great ideas! In computer science, we have to solve problems all of the time, so we'll be
looking back at all of these problem solving skills today and for the rest of the course. Most of the
problem solving that people do in computer science happens in teams. Today, we're going to work in
teams to solve a fun problem that doesn't need computers. While you work on that problem, here's a
question that you can think about.
Remarks
Today we're going to be building paper towers. You'll have an opportunity to build at least two towers
and use your experience with each one to improve your designs. Before we get started, decide as a
group what kind of design you'd like to make with your first tower. Record your ideas and any possible
weaknesses of this design on your activity guide.
Develop a Plan
Give students a couple minutes to discuss in groups the approach they will be taking with this first tower.
Once groups have recorded their ideas and some possible weaknesses they can come to you to get their
paper and begin building their towers.
Teaching Tip
Hold onto the paper until students submit a plan for their tower. The goal isn't to slow them down too
much, but just give them a moment to reflect briefly on the possible approaches they could take. This is
one way this activity foreshadows the Planning step of the problem solving process students will see in
subsequent lessons.
Share: Have students share the results of their first run with neighboring groups. Ask groups to focus
particularly on what the eventual failure of their tower was (e.g. tall but doesn't stand on its own, stands but
is really short, etc.) and brainstorm ways to get around those problems.
Teaching Tip
While some students will view this portion as a competition, emphasize that each group is looking to
improve its own design, not competing against others. You are appealing for each student to challenge
themselves first, not others.
Develop a Plan
Remarks
Now that you've had a chance to learn from the first round of tower making, let's run the same activity
again. First, your group will develop a new plan. Just as before, record it on your activity guide, and once
you're ready I'll come around and give you more paper.
Support: As you circulate from group to group, ask questions about the group’s focus in redesign. EX:
“What aspect of your tower needed the most improvement?” “What ideas from other groups did you want
to incorporate to yours?” “Did you feel the need to completely rebuild your tower, or make minor
modifications?”
Once groups have prepared their new plans give them new pieces of paper and have them each build a
new tower.
Assessment Opportunity
Reflect
Transition: Ask class to return to their own seats to reflect on the activity.
Wrap Up (5 minutes)
Discuss the Challenge
Question of the Day: What can help us to work together and solve problems as a team?
Prompt: You worked in teams for this activity. How did working in a team make this activity easier, how did
it make the activity more challenging? What helped your group overcome these challenges?
Discuss: Allow students time to share thoughts with the class.
Assessment Opportunity
Students may recognize that collaboration allowed them to think through their ideas more thoroughly
or that they were able to split up the work that they needed to do. As students list challenges, ensure
that they are coming up with ways to overcome those challenges. If you have noticed any issues in
group dynamics during the activity, you may want to use this time to bring up these as potential
problems in a non-confrontational way and help students to generate strategies for working together
more effectively in future activities. These can serve as classroom norms for group work moving
forward.
Remarks
All of your thoughts around these questions were great. We're going to be doing a lot of teamwork in this
class. You may be used to thinking about computer science as being all about computers, but first and
foremost computer science is about solving problems, and usually that happens in teams. A lot of other
parts of this activity like improving designs, and building things is also going to be a big part of this class. I
hope you're excited for the year. Tomorrow we'll start digging deeper into problem solving itself.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 12: Exploring Problem Solving -
Animals Theme (Alternate Lesson 3)
90 minutes
Overview Objectives
In this lesson, students apply the problem-solving process Students will be able to:
to three different problems in order to better understand
the value of each step. They will solve tangrams, choose a Apply the problem solving process
pet for several people, and plan a pet adoption event. The to approach a variety of problems
problems grow increasingly complex and poorly defined to Assess how well-defined a problem
highlight how the problem-solving process is particularly is and use strategies to define the
helpful when tackling these types of problems. The lesson problem more precisely
concludes with students reflecting on their experience with
the problem-solving process. They will justify the inclusion
of each step and will brainstorm questions or strategies
that can help them better define open-ended problems, as
Preparation
this is often the most critical step. Print the activity guide for each
student
This lesson will likely take two class periods or more to
complete. The first two problems may fit into a single class Prepare tangrams for students, or
period but the third will need to be moved to a second day. print out one tangram sheet and
get scissors for each group.
Question of the Day: How can we apply the problem- Poster to record strategies for
solving process to many different kinds of problems? defining problems in wrap up
This is an alternate activity to Exploring Problem Solving discussion
Check the "Teacher's Lounge"
Assessment Opportunities forum for verified teachers to find
additional strategies or resources
1. Apply the problem solving process to approach a shared by fellow teachers
variety of problems If you are teaching virtually,
consider checking our Virtual
On page 5 of the Activity Guide, check the chart to
make sure that students are putting in reasonable Lesson Modifications
steps for each of the problems.
2. Assess how well-defined a problem is and use Links
strategies to define the problem more precisely
For the last question on page 5 of the Activity Guide, Heads Up! Please make a copy of
make sure that students have at least one question or any documents you plan to share
strategy that would be an effective way to better with students.
define a problem.
For the teachers
Exploring Problem Solving
Standards Full Course Alignment
(Animals) - Slides Make a Copy
CSTA K-12 Computer Science Standards (2017) For the students
AP - Algorithms & Programming
Agenda Solving Problems - Activity Guide
Make a Copy
Warm Up (5 minutes) Tangrams - Resource
Make a Copy
Activity (80 minutes)
Solving Problems
Understanding the Problem Solving Process
Wrap Up (5 minutes)
Teaching Guide
Warm Up (5 minutes)
Journal Prompt: Think of the silliest problem the problem solving process could help with. Be prepared to
say how each step of the process could apply.
Allow students to share out individually.
Discussion Goal: This discussion serves as a review of the problem solving process and highlights how
many different types of problems there could be. Encourage students to be creative and have some fun
with the different "problems" they might solve.
Remarks
With such a wide variety of problems and strategies, it's important to be able to think about how best to
use the problem solving process. Today we're going to look at some different types of problems, talk
about what makes them different, and reflect on how the problem solving process helped us solve them.
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Solving Problems
Tangrams
Teaching Tip
Integrating the Problem Solving Process: The tangrams can actually take several minutes, especially if
students are approaching without some kind of strategy. Remind them that one step is to Prepare
before they just jump in and start hunting.
Make It a Race: Making this problem a race is a good way to drive motivation and also ensure that
groups don't share the solutions once they've found them.
Key: A key showing possible solutions can be found online following the link provided above.
Once students are in groups, hand them the sheets with the tan pieces. ask them to flip over their activity
guides and begin the first challenge. They'll be creating the images using their tan pieces that they can cut
out.
Circulate: Walk around the room observing how students are addressing the problem. Make sure that
groups are not sharing answers. Encourage them to think about how making a plan might help them
address this task.
Once all groups have finished, bring the class back together. Have students flip to the last page of the
activity guide where there is a table to record their experiences with the problem. They will record what
parts of solving this problem fall within each step of the problem solving process.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was already very well defined. Not all problems will be, though.
Prepare: Developing a plan with a team (such as divvying up the images or just working together on
each image) makes this problem much easier to solve than randomly placing pieces places.
Try: Patience and persistence is important to see your plan through
Reflect: If your early plans are not working you can regroup and choose a new plan
Choose a Pet
Teaching Tip
Integrating the Problem Solving Process: This problem is particularly challenging if you don't define the
problem well. If you take it at face value, your job is to randomly guess and check where to place
individual puts until you find a solution. It is much easier if you first list the possible pets for each person,
then choose pets for the most selective people first.
This isn't the only approach to the problem, and you shouldn't rush to introduce it as such. Rather,
encourage students to discuss with one another what they know needs to be true at the end and
whether different approaches might help.
Extending the Problem: If one group finishes far before others you could give them a blank sheet of
paper and ask them to solve the problem again but with a new condition of your choosing (e.g. pick one
person in their solution and ask whether they can solve the problem with an added requirement.)
Move the class on to the choose a pet problem. Groups may still work together on their solutions but
shouldn't share with other groups.
Circulate: As before, circulate around the room noting the types of strategies that groups are using.
Remind them to use the steps of the problem solving process to help them if they're getting stuck.
Once groups have finished solving the problem ask them to move to the last page of the activity guide to
record how they used the problem solving process to solve this problem.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: The problem seems to be a problem of choosing a pet for each person according to
requirements. If you first break that problem down into choosing a pet from a list of possible pets, it is
much easier.
Prepare: Ask students to share what types of strategies they considered before just starting to assign
people to seats.
Try: As before, patience and persistence is important to see your plan through
Reflect: If early strategies are not working groups may have regrouped and tried a more structured
approach
Integrating the Problem Solving Process: This problem is intentionally very open-ended and in fact has
students develop the criteria they'll use to measure success. This problem does the best job of
highlighting all 4 steps of the process and walks students more intentionally through the Define,
Prepare, Try, and Reflect stages.
Give Resource Ideas: Students may just brainstorm ideas by themselves, but also let them know about
other resources such as search engines and image searchers to help give them inspiration if they are
stuck. Let them look at other event pages and flyers online for help.
When to Stop: This problem could easily take a 50 minute class period. Let students know ahead of
time that there are time limits on what they're doing and encourage them to think how they would
improve their plan using the problem solving process if they had more time to iterate.
Move the class on to the Plan a Pet Adoption Event problem. Each member of the group will individually be
developing a plan for a layout that follows criteria they'll develop as a team. Give students time to choose
the goals they'll use to plan their plan. For example there may be certain things they'd like to move, places
people will have to go, people they want to help them, etc.
Circulate: Once groups have goals, they will move through the activity by developing a plan to create the
adoption event. Give them a time limit on this part of this process, e.g. 15 minutes, to make sure they focus
on the key elements on their plan rather than perfecting it. They should record key information about their
plan in their activity guides.
Bring groups back together and have them share their initial plans. On the activity guides they can record
the feedback their classmates give them on their plans.
Once groups have discussed what they like or don't like about their classmates' proposed plans, they can
re-examine them and make improvements. Are there other things they'd like to do? Do they have new
goals? Give them several minutes to make improvements to their plans before deciding on a final version.
Bring the class back together and have them record the different steps of the problem solving process that
they used in their activity guides.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was not well-defined. They needed to decide for themselves what a "good"
adoption event looked like, and this definition could have even shifted throughout the process.
Prepare: Narrowing down a list of possible layouts is helpful. You may also choose to make the point
that this entire activity is an example of preparation. Some layouts just don't make sense or others
work better, so you need to do the kind of planning they're doing here.
Try: As before, patience and persistence is important to see your plan through
Reflect: In this problem reflection came primarily through feedback from peers. Some layouts might not
end up seeming as practical to other group members. Some are fun but require too much moving or
too many new things. Feedback is an important part of the reflect step, especially in group work.
Apply the problem-solving process to approach a variety of problems On page 5 of the Activity Guide,
check the chart to make sure that students are putting in reasonable steps for each of the problems.
Assess how well-defined a problem is and use strategies to define the problem more precisely
For the last question on page 5 of the Activity Guide, make sure that students have at least one
question or strategy that would be an effective way to better define a problem.
Wrap Up (5 minutes)
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Journal Prompt: The problem solving process is particularly helpful when we encounter poorly-defined
problems. We saw today that without a well-defined problem the rest of the problem solving process is
difficult to follow. What are some questions or strategies we can use to help us better understand and
define problems before we try to solve them?
Discuss: Have groups share quickly before taking suggestions from the class as a whole.
Discussion Goal: There are many different strategies to help define problems, including the questions in the
previous lesson's activity guide. Some potentially useful questions include:
Who in particular the problem affects. What specifically do they need? In what kind of situations?
Why does the problem exist? (And why does that problem exist?) Keep asking to get to the heart of
the problem.
How could I be able to tell the problem had been solved? What could I observe or measure?
Remarks
Excellent work everyone. We now understand a great deal about the problem solving process. This is
going to be an incredibly useful tool that we'll use repeatedly throughout the year as we dig deeper into
understanding the world of computer science.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.
Lesson 13: Exploring Problem Solving -
Games Theme (Alternate Lesson 3)
90 minutes
Overview Objectives
In this lesson, students apply the problem-solving process Students will be able to:
to three different problems in order to better understand
the value of each step. They will solve a maze, organize a Apply the problem solving process
team to race as fast as possible, and design a game. The to approach a variety of problems
problems grow increasingly complex and poorly defined to Assess how well-defined a problem
highlight how the problem-solving process is particularly is and use strategies to define the
helpful when tackling these types of problems. The lesson problem more precisely
concludes with students reflecting on their experience with
the problem-solving process. They will justify the inclusion
of each step and will brainstorm questions or strategies
that can help them better define open-ended problems, as
Preparation
this is often the most critical step. Print the activity guide for each
student
This lesson will likely take two class periods or more to
complete. The first two problems may fit into a single class Scratch paper for the Partner Race
period but the third will need to be moved to a second day. Relay problem
Poster to record strategies for
Question of the Day: How can we apply the problem- defining problems in wrap up
solving process to many different kinds of problems? discussion
This is an alternate activity to Exploring Problem Solving Check the "Teacher's Lounge"
forum for verified teachers to find
additional strategies or resources
Standards Full Course Alignment shared by fellow teachers
If you are teaching virtually,
CSTA K-12 Computer Science Standards (2017) consider checking our Virtual
AP - Algorithms & Programming Lesson Modifications
Agenda Links
Warm Up (5 minutes)
Heads Up! Please make a copy of
Activity (80 minutes) any documents you plan to share
Solving Problems with students.
Understanding the Problem Solving Process
Wrap Up (5 minutes) For the teachers
Exploring Problem Solving
(Games) - Slides Make a Copy
For the students
Solving Problems - Activity Guide
Make a Copy
Teaching Guide
Warm Up (5 minutes)
Journal Prompt: Think of the silliest problem the problem solving process could help with. Be prepared to
say how each step of the process could apply.
Allow students to share out individually.
Discussion Goal: This discussion serves as a review of the problem-solving process and highlights how
many different types of problems there could be. Encourage students to be creative and have some fun
with the different "problems" they might solve.
Remarks
With such a wide variety of problems and strategies, it's important to be able to think about how best to
use the problem solving process. Today we're going to look at some different types of problems, talk
about what makes them different, and reflect on how the problem solving process helped us solve them.
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Solving Problems
Maze
Teaching Tip
Integrating the Problem Solving Process: This word search can actually take several minutes, especially
if students are approaching without some kind of strategy. Remind them that one step is to Prepare
before they just jump in and start hunting.
Make It a Race: Making this problem a race is a good way to drive motivation and also ensure that
groups don't share the locations of words once they've found them.
Key: A key showing possible solutions can be found online following the link provided above.
Once students are in pairs ask them to flip over their activity guides and begin the first challenge. They'll be
finding a solution to a multi-step maze.
Circulate: Walk around the room observing how students are addressing the problem. Make sure that
groups are not sharing solutions. Encourage them to think about how making a plan might help them
address this task.
Once all groups have finished, bring the class back together. Have students flip to the last page of the
activity guide where there is a table to record their experiences with the problem. They will record what
parts of solving this problem fall within each step of the problem solving process.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was already very well defined. Not all problems will be, though.
Prepare: Developing a plan with a team (such as divvying up the maze, or just being methodical about
looking for a path) makes this problem much easier to solve than random trying.
Try: Patience and persistence is important to see your plan through
Reflect: If your early plans are not working you can regroup and choose a new plan
Integrating the Problem Solving Process: This problem is particularly challenging if you don't Define the
problem well. If you take it at face value, your job is to randomly guess and check partnering the
players until you find a fast solution. It is much easier if you come up with general strategies first (send
fast people back, pair slow people together).
This isn't the only approach to the problem, and you shouldn't rush to introduce it as such. Rather,
encourage students to discuss with one another what they know needs to be true at the end and
whether different approaches might help.
Draw Pictures: Students will likely do better if they try out different solutions. You may wish for
students to use a journal or scratch paper as a place to brainstorm ideas.
Extending the Problem: If one group finishes far before others you could give them a blank sheet of
paper and ask them to solve the problem again but with a shorter time. The minimum time for the
solution is 42 minutes, and if students have already reached that time, challenge them to explain how
they know that their time is the fastest.
Move the class on to the partner race relay problem. Groups may still work together on their solutions but
shouldn't share with other groups.
Circulate: As before, circulate around the room noting the types of strategies that groups are using.
Remind them to use the steps of the problem solving process to help them if they're getting stuck.
Once groups have finished solving the problem ask them to move to the last page of the activity guide to
record how they used the problem solving process to solve this problem.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: The problem seems to be a problem of getting a team to move quickly. If you instead think of it
as a problem of having fast people run more trips or pairing slow people so they don't slow down fast
people, the problem can be solved more quickly.
Prepare: Ask students to share what types of strategies they considered before just starting to try out
solutions.
Try: As before, patience and persistence is important to see your plan through
Reflect: If early strategies are not working groups may have regrouped and tried a more structured
approach
Make a Game
Teaching Tip
Integrating the Problem Solving Process: This problem is intentionally very open-ended and in fact has
students develop the criteria they'll use to measure success. This problem does the best job of
highlighting all 4 steps of the process and walks students more intentionally through the Define,
Prepare, Try, and Reflect stages.
Give Resource Ideas: Students may just brainstorm ideas by themselves, but also let them know about
other resources such as search engines and image searchers to help give them inspiration if they are
stuck. Let them look at other games online for help.
When to Stop: This problem could easily take a 50 minute class period. Let students know ahead of
time that there are time limits on what they're doing and encourage them to think how they would
improve their route using the problem solving process if they had more time to iterate.
Move the class on to the Make a Game problem. Each member of the group will individually be developing
a plan for a layout that follows criteria they'll develop as a team. Give students time to choose the goals
they'll use to plan their game. For example there may be certain space restrictions, number of students
included, etc.
Once groups have goals, they will move through the activity by developing a plan to make their game. Give
them a time limit on this part of this process, e.g. 15 minutes, to make sure they focus on the key elements
on their plan rather than perfecting it. They should record key information about their plan in their activity
guides.
Bring groups back together and have them share their initial plans. On the activity guides they can record
the feedback their classmates give them on their plans.
Once groups have discussed what they like or don't like about their classmates' proposed plans, they can
re-examine them and make improvements. Are there other things they'd like to do? Do they have new
goals? Give them several minutes to make improvements to their plans before deciding on a final version.
Bring the class back together and have them record the different steps of the problem solving process that
they used in their activity guides.
Discuss: Briefly discuss with students what parts of the activity they felt fell into each step of the problem
solving process. Some possible points to make after students share are below.
Define: This problem was not well-defined. They needed to decide for themselves what a "good" game
looked like, and this definition could have even shifted throughout the process.
Prepare: Narrowing down a list of possible layout is helpful. You may also choose to make the point
that this entire activity is an example of preparation. Some games just don't make sense or others work
better, so you need to do the kind of planning they're doing here.
Try: As before, patience and persistence is important to see your plan through
Reflect: In this problem reflection came primarily through feedback from peers. Some games might not
end up being that interesting to other group members. Some are fun but require too much work or too
many materials. Feedback is an important part of the reflect step, especially in group work.
Apply the problem-solving process to approach a variety of problems On page 5 of the Activity Guide,
check the chart to make sure that students are putting in reasonable steps for each of the problems.
Assess how well-defined a problem is and use strategies to define the problem more precisely
For the last question on page 5 of the Activity Guide, make sure that students have at least one
question or strategy that would be an effective way to better define a problem.
Wrap Up (5 minutes)
Question of the Day: How can we apply the problem solving process to many different kinds of
problems?
Journal Prompt: The problem solving process is particularly helpful when we encounter poorly-defined
problems. We saw today that without a well-defined problem the rest of the problem solving process is
difficult to follow. What are some questions or strategies we can use to help us better understand and
define problems before we try to solve them?
Discuss: Have groups share quickly before taking suggestions from the class as a whole.
Discussion Goal: There are many different strategies to help define problems, including the questions in the
previous lesson's activity guide. Some potentially useful questions include:
Who in particular the problem affects. What specifically do they need? In what kind of situations?
Why the problem exists? (And why does that problem exist?) Keep asking to get to the heart of the
problem.
How could I be able to tell the problem had been solved? What could I observe or measure?
Remarks
Excellent work everyone. We now understand a great deal about the problem solving process. This is
going to be an incredibly useful tool that we'll use repeatedly throughout the year as we dig deeper into
understanding the world of computer science.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.