Skip to content
Computer Science · Grade 9

Active learning ideas

Problem Decomposition Strategies

Active learning works well for problem decomposition because students need to physically and cognitively break down tasks, which mirrors how algorithms function in real code. When students move beyond passive note-taking to act out or compare different solutions, they internalize the value of clear, efficient steps before formalizing them in pseudocode or flowcharts.

Ontario Curriculum ExpectationsCS.HS.AP.1CS.HS.CT.1
20–30 minPairs → Whole Class3 activities

Activity 01

Role Play20 min · Pairs

Role Play: The Human Robot

One student acts as a 'robot' who only follows literal instructions, while another provides the algorithm to complete a task like drawing a maple leaf. The class observes where the instructions fail and suggests iterative improvements to the 'code'.

Analyze how breaking a problem into smaller parts simplifies its solution.

Facilitation TipDuring 'The Human Robot,' provide each student with a simple, everyday task to decompose, but avoid giving hints about efficiency until after the first round.

What to look forPresent students with a scenario, such as 'planning a birthday party.' Ask them to list three distinct sub-problems that need to be solved to plan the party and explain how solving each sub-problem contributes to the overall goal.

ApplyAnalyzeEvaluateSocial AwarenessSelf-Awareness
Generate Complete Lesson

Activity 02

Formal Debate30 min · Small Groups

Formal Debate: The Fastest Route

Provide two different algorithms for sorting a deck of cards. Groups test both methods and then engage in a structured debate to argue which is more efficient based on the number of steps taken and the time required.

Differentiate between effective and ineffective decomposition strategies for a given problem.

Facilitation TipFor 'The Fastest Route,' assign roles clearly so debaters focus on comparing algorithm paths rather than personal preferences.

What to look forProvide students with a short, familiar task (e.g., making a sandwich). Ask them to write down the steps involved. Then, ask them to identify one step that could be further broken down into smaller actions and explain why.

AnalyzeEvaluateCreateSelf-ManagementDecision-Making
Generate Complete Lesson

Activity 03

Inquiry Circle25 min · Small Groups

Inquiry Circle: Everyday Algorithms

Students work in groups to document a complex school procedure, like the library book return system, as a formal flowchart. They then swap flowcharts with another group to see if the instructions are clear enough to follow without prior knowledge.

Construct a step-by-step plan to decompose a real-world challenge into solvable components.

Facilitation TipIn 'Everyday Algorithms,' circulate to ensure groups document their steps in a way that others can follow, not just for themselves.

What to look forPose the question: 'Imagine you need to build a robot that can sort colored blocks. What are some different ways you could decompose this problem?' Facilitate a class discussion comparing the strategies students propose, focusing on which ones seem most efficient or logical.

AnalyzeEvaluateCreateSelf-ManagementSelf-Awareness
Generate Complete Lesson

A few notes on teaching this unit

Teachers should avoid presenting decomposition as a rigid process with one right answer. Instead, model how to compare different approaches by thinking aloud while breaking down tasks yourself. Research shows that students learn best when they see the teacher wrestle with trade-offs, such as whether to prioritize simplicity or speed in a solution.

Successful learning looks like students recognizing that a single task can be solved in multiple ways, each with trade-offs in clarity, speed, or resource use. They should articulate why one decomposition strategy might be better than another and connect their reasoning to the larger goal of writing effective algorithms.


Watch Out for These Misconceptions

  • During 'The Human Robot,' watch for students who believe algorithms must be written in code.

    Use the 'Human Robot' activity to show that algorithms are about logic first, such as having a student act as a robot following precise steps to fetch a book, before moving to pseudocode.

  • During 'The Fastest Route,' watch for students who assume there is only one correct path to solve a problem.

    In the debate, require students to present at least two different algorithm paths and justify why one might be faster or clearer, even if they prefer a different approach.


Methods used in this brief