Coding · Grade 8
Specify and Decompose a Software Project
Using a community-garden booking app, learners write and classify functional and non-functional requirements and constraints, identify stakeholders, and turn vague wishes into testable Given/When/Then acceptance criteria that become code checks. They decompose the system into modules with clear responsibilities and data flow, then plan an MVP, milestones and risks, and write a reviewed mini specification for a project of their own.
- 4 lessons
- About 85 minutes
- Check what you learned: 8 questions
- Ways to answer: choose an answer, trace code, highlight a text, match pairs, type a number and put in order
What learners will discover
- Classify requirements as functional, non-functional or constraints, and identify stakeholders and their needs.
- Write testable acceptance criteria and replace vague requirements with measurable ones.
- Decompose a project into modules with single responsibilities and trace data flowing through their interfaces.
- Plan an MVP, order milestones by dependencies and score risks by likelihood and impact.
Lessons
-
Requirements and stakeholders 5 steps2 practiceabout 20 min
-
Testable acceptance criteria 6 steps4 practiceabout 22 min
-
Modules and data flow 5 steps3 practiceabout 20 min
-
Planning scope, risks and milestones 5 steps4 practiceabout 18 min
-
Check what you learned 8 questions at the end
Keep exploring
Games to practice with
- Bug DetectiveA robot program almost works. Run it, spot the buggy block, and fix it.
- Sorting FactoryTurn a work order into if/else rules and watch the conveyor sort every item.
- Garden AutomationProgram a garden robot with sensor rules — then watch a whole day play out.
More 8th grade coding
- 8th Grade Coding Games4 games to play free
- 8th Grade Coding Worksheets10 printable worksheets
Guide for grown-ups
- How to start homeschooling: a step-by-step guide for familiesA guide for parents · 7 min read