Learning objective
Decomposition
Decomposition & Problem Solving
Breaking down complex tasks, games, and systems into smaller, manageable sub-problems to solve systematically.
Simple Tasks
Break down daily routines and simple tasks into smaller sequential actions.
Let's Go!
Learn
Decomposition means breaking a big problem or task into smaller, easier steps. When making hot cocoa, you do not just get a drink instantlyโyou get a mug, heat milk, mix powder, and stir! Breaking tasks down makes them easier to understand and code.
Try it yourself
Deconstruct a Routine
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Identifies that a big task can be broken into parts with guidance.
Lists 2-3 individual steps needed to complete a daily routine.
Accurately breaks down an everyday task into a complete sequence of sub-steps.
Explains why missing a single sub-step breaks the overall task process.
๐ What A Good One Looks Like (WAGOLL)
A top-tier student project for Simple Tasks includes:
- Core Deliverable: Deconstruct a Routine
- Target Quality: Accurately breaks down an everyday task into a complete sequence of sub-steps.
- Excellence & Polish: Explains why missing a single sub-step breaks the overall task process.
When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: See Think Wonder
Achievement pathway
- Foundation: Identifies that a big task can be broken into parts with guidance.
- Developing: Lists 2-3 individual steps needed to complete a daily routine.
- Secure: Accurately breaks down an everyday task into a complete sequence of sub-steps.
- Mastering: Explains why missing a single sub-step breaks the overall task process.
Curriculum links
Curriculum strand: AP.01.B.1.1
Outcome: DCMP.01 โ Break down daily routines and simple tasks into smaller sequential actions.
PYP: Form ยท Complex activities are made of small, simple steps.
Learner profile: Inquirer
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow
Locked level
Level 2: Picture Decomposition
Complete the previous learning check to unlock this next level.
Picture Decomposition
Identify discrete visual and audio elements within a digital story or scene.
Learning objective
Separate a complex digital animation or story scene into individual backgrounds, characters, and sound effects.
Let's Go!
Learn
Digital projects look like one big picture, but coders decompose them into distinct parts: Backgrounds (where it happens), Sprites (who moves), and Sounds (what we hear). By breaking a scene down into these elements, you can code each part separately.
Try it yourself
Scene Breakdown Challenge
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Recognizes that a digital scene contains a background and a character.
Identifies separate sprites, background art, and sound effects in a digital project.
Deconstructs an animated story scene into a full inventory of independent assets.
Suggests how changing one sub-part (e.g. background) alters the scene without changing code for characters.
๐ What A Good One Looks Like (WAGOLL)
A top-tier student project for Picture Decomposition includes:
- Core Deliverable: Scene Breakdown Challenge
- Target Quality: Deconstructs an animated story scene into a full inventory of independent assets.
- Excellence & Polish: Suggests how changing one sub-part (e.g. background) alters the scene without changing code for characters.
When you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: Zoom In
Achievement pathway
- Foundation: Recognizes that a digital scene contains a background and a character.
- Developing: Identifies separate sprites, background art, and sound effects in a digital project.
- Secure: Deconstructs an animated story scene into a full inventory of independent assets.
- Mastering: Suggests how changing one sub-part (e.g. background) alters the scene without changing code for characters.
Curriculum links
Curriculum strand: AP.01.B.1.1
Outcome: DCMP.02 โ Identify discrete visual and audio elements within a digital story or scene.
PYP: Function ยท Digital creations are built by combining separate visual and sound parts.
Learner profile: Communicator
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow
Locked level
Level 3: Game Sub-Tasks
Complete the previous learning check to unlock this next level.
Game Sub-Tasks
Deconstruct simple computer games into distinct sub-problems (player movement, scoring, obstacles).
Learning objective
Break down a game concept into independent sub-tasks: player movement, score keeping, and collision rules.
Let's Go!
Learn
Building a complete computer game can feel overwhelming! Experienced programmers decompose games into three key sub-problems: 1) Player Movement, 2) Obstacles & Enemies, and 3) Score & Win Conditions. Solving these one by one makes game development manageable.

Try it yourself
Deconstruct a Catch Game
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Identifies that a game has player controls and a goal.
Lists key game mechanics like moving, dodging obstacles, and getting points.
Deconstructs a full arcade game into clear sub-problems ready for independent coding.
Evaluates how decomposing a game into sub-tasks allows team members to code different parts simultaneously.
๐ What A Good One Looks Like (WAGOLL)
โญ Secure StandardWhen you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: See Think Wonder
Achievement pathway
- Foundation: Identifies that a game has player controls and a goal.
- Developing: Lists key game mechanics like moving, dodging obstacles, and getting points.
- Secure: Deconstructs a full arcade game into clear sub-problems ready for independent coding.
- Mastering: Evaluates how decomposing a game into sub-tasks allows team members to code different parts simultaneously.
Curriculum links
Curriculum strand: AP.02.B.1.1
Outcome: DCMP.03 โ Deconstruct simple computer games into distinct sub-problems (player movement, scoring, obstacles).
PYP: Connection ยท Interactive games consist of distinct connected sub-systems working together.
Learner profile: Thinker
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow
Locked level
Level 4: Modular Planning
Complete the previous learning check to unlock this next level.
Modular Planning
Map out modular program structures before coding using task lists and sub-goal labels.
Learning objective
Plan a multi-step project by dividing it into independent modular components and assigning sub-goals.
Let's Go!
Learn
Modular design means organizing code into neat, self-contained sections called modules. Instead of writing one huge continuous script, coders build separate scripts for separate tasks (e.g. movement script, sound script, health bar script). This makes code easier to read, test, and update.

Try it yourself
Build a Modular Plan
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Creates a simple list of tasks before starting to code.
Groups related tasks into functional modules (e.g. sound module, motion module).
Constructs a comprehensive modular plan with clear sub-goal labels and independent test criteria.
Reflects on how modular planning prevents code clutter and speeds up project completion.
๐ What A Good One Looks Like (WAGOLL)
โญ Secure StandardWhen you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: See Think Wonder
Achievement pathway
- Foundation: Creates a simple list of tasks before starting to code.
- Developing: Groups related tasks into functional modules (e.g. sound module, motion module).
- Secure: Constructs a comprehensive modular plan with clear sub-goal labels and independent test criteria.
- Mastering: Reflects on how modular planning prevents code clutter and speeds up project completion.
Curriculum links
Curriculum strand: AP.02.B.1.1
Outcome: DCMP.04 โ Map out modular program structures before coding using task lists and sub-goal labels.
PYP: Responsibility ยท Complex software projects require structured modular planning before code execution.
Learner profile: Principled
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow
Locked level
Level 5: System Sub-Systems
Complete the previous learning check to unlock this next level.
System Sub-Systems
Analyze multi-sprite interactive applications and identify shared vs isolated state interactions.
Learning objective
Deconstruct complex applications into parallel interactive subsystems and document their inputs and outputs.
Let's Go!
Learn
Large software systems (like smartphone OSs or online games) consist of multiple sub-systems running in parallel. System decomposition analyzes how these sub-systems interact: what inputs they take, what outputs they generate, and how they share state data without interfering with one another.

Try it yourself
Deconstruct a Quiz System
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Identifies that different sprites interact with each other in a project.
Maps out which sprites send signals and which sprites respond to those signals.
Deconstructs a complex system into parallel subsystems, detailing shared state variables and message interfaces.
Critiques system architectures to optimize decoupling between sub-components.
๐ What A Good One Looks Like (WAGOLL)
โญ Secure StandardWhen you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: Zoom In
Achievement pathway
- Foundation: Identifies that different sprites interact with each other in a project.
- Developing: Maps out which sprites send signals and which sprites respond to those signals.
- Secure: Deconstructs a complex system into parallel subsystems, detailing shared state variables and message interfaces.
- Mastering: Critiques system architectures to optimize decoupling between sub-components.
Curriculum links
Curriculum strand: AP.03.B.1.1
Outcome: DCMP.05 โ Analyze multi-sprite interactive applications and identify shared vs isolated state interactions.
PYP: Perspective ยท Analyzing complex systems reveals how independent sub-components communicate and share state.
Learner profile: Knowledgeable
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow
Locked level
Level 6: Architectural Breakdown
Complete the previous learning check to unlock this next level.
Architectural Breakdown
Apply top-down functional decomposition to design scalable software architectures and procedural modules.
Learning objective
Apply top-down design methodology to decompose a large software application into modular, reusable procedural abstractions.
Let's Go!
Learn
Top-Down Design is an engineering method where you start at the highest abstraction level (the overall system goal) and recursively break it down into lower-level functional modules until each piece performs a single, specific task. This approach creates clean, reusable custom blocks and scalable software architecture.

Try it yourself
Architect a Simulation App
๐ Open a practice space
Or try locally: ๐ Raspberry Pi Projects
๐ Student Project GuideSuccess Criteria & WAGOLL (What A Good One Looks Like)
๐ฏ Task Success Criteria (Rubric)
Understands top-down design as starting from the big picture down to details.
Decomposes a complex program into high-level functions and sub-functions.
Executes a full top-down functional decomposition, producing reusable custom procedures and clear architectural diagrams.
Evaluates architectural trade-offs between monolithic and highly decomposed modular software designs.
๐ What A Good One Looks Like (WAGOLL)
โญ Secure StandardWhen you finish creating your project in your software, copy the share link or take a screenshot and publish it onto your student portfolio website!
Reflect
Learning check
Teacher setup, curriculum links and progress descriptors
Spark support
Routine: See Think Wonder
Achievement pathway
- Foundation: Understands top-down design as starting from the big picture down to details.
- Developing: Decomposes a complex program into high-level functions and sub-functions.
- Secure: Executes a full top-down functional decomposition, producing reusable custom procedures and clear architectural diagrams.
- Mastering: Evaluates architectural trade-offs between monolithic and highly decomposed modular software designs.
Curriculum links
Curriculum strand: AP.03.B.1.1
Outcome: DCMP.06 โ Apply top-down functional decomposition to design scalable software architectures and procedural modules.
PYP: Reflection ยท Top-down architectural design enables developers to solve large computational problems systematically.
Learner profile: Reflective
Competency tags
Gate support
Accessibility alternative:
Teacher override: allow




