Lesson Plan

Lesson Plan
Grade: Date: 17/01/2026
Subject: Computer Science
Lesson Topic: Use different methods to design and construct a solution to a problem
Learning Objective/s:
  • Describe the six‑step problem‑solving process for algorithm design.
  • Compare pseudocode, flowchart, decision table and structured English as design methods.
  • Apply a chosen design method to create an algorithm that processes a list of scores and calculates required statistics.
  • Test and debug the implemented program using normal, boundary and error data.
  • Evaluate the efficiency and readability of the solution against the original specification.
Materials Needed:
  • Projector or interactive whiteboard
  • Computer lab with IDE (e.g., Python or Java)
  • Printed handout of the sample problem and design‑method summary
  • Whiteboard and markers
  • Sample test‑case worksheets
Introduction:

Begin with a quick poll: how many students have written a program that reads multiple inputs? Review the six‑step problem‑solving cycle they have previously learned, then state that today they will explore four different ways to design an algorithm before coding. Success will be measured by producing a correct design artefact and a working program for the score‑analysis problem.

Lesson Structure:
  1. Do‑now (5'): Short quiz on the six‑step problem‑solving process.
  2. Mini‑lecture (10'): Explain and compare pseudocode, flowchart, decision table, and structured English.
  3. Guided practice (15'): As a class, develop pseudocode for the score‑analysis problem, highlighting inputs, loop, and calculations.
  4. Group activity (20'): Each group creates a different design artefact (flowchart, decision table, or structured English) for the same problem and presents it.
  5. Coding implementation (15'): Students translate their chosen design into code in the IDE and run sample test cases.
  6. Test & debug (10'): Pair‑check each other's programs using the provided test cases and record any errors.
  7. Reflection & evaluation (5'): Discuss which design method was most helpful and why.
Conclusion:

Summarise the key takeaway that selecting an appropriate design method streamlines coding and debugging. Students complete an exit ticket by writing which method they would use for a new problem and why. For homework, they modify the program to count how many scores are above the average and document the changes.