Lesson Plan

Lesson Plan
Grade: Date: 17/01/2026
Subject: Computer Science
Lesson Topic: Understand the need for validation and verification checks
Learning Objective/s:
  • Describe the difference between validation and verification in algorithm design.
  • Explain why both checks are essential for correct and secure programs.
  • Apply validation techniques to identify and reject invalid inputs.
  • Apply verification techniques to test algorithm logic with normal, boundary, and edge cases.
  • Evaluate a simple algorithm for proper validation and verification implementation.
Materials Needed:
  • Projector or interactive whiteboard
  • Slides illustrating validation vs. verification
  • Sample code snippets (factorial, grading algorithm)
  • Worksheets with test‑case exercises
  • Laptops or computers with an IDE (e.g., Python)
  • Printed handout of a validation checklist
Introduction:
Begin with a quick poll asking students to recall a time a program crashed or gave a wrong result. Connect those experiences to the concepts of validation and verification. State that by the end of the lesson they will be able to differentiate the two and apply appropriate checks in their own code.
Lesson Structure:
  1. Do‑Now (5') – Students list examples of program failures they have encountered.
  2. Mini‑lecture (10') – Define validation and verification; present the comparison table.
  3. Guided demo (10') – Walk through the grading‑system algorithm, add validation checks, and run test cases.
  4. Pair activity (15') – On worksheets, students write validation and verification steps for a factorial program and generate three test cases (normal, boundary, invalid).
  5. Whole‑class share (5') – Groups present their test cases and discuss outcomes.
  6. Quick check (5') – Exit ticket: write in one sentence the key difference between validation and verification.
Conclusion:
Recap the definitions and why both checks are crucial for reliable software. Collect exit tickets and highlight any common misconceptions. Assign homework: students must add validation and verification steps to a provided pseudo‑code for a simple calculator program.