C08 Resources — Debugging, Alpha Testing & Design Modifications

Criterion scope: Testing (test data, testing table, test cases, expected vs actual output), debugging (breakpoints, debugging statements, trace tables), error types (syntax, logic, runtime), design modifications, evaluation criteria updates, contingency plans.


C8-1: Testing & Debugging

Existing Materials (CriterionXX/)

Criterion08/ is well-resourced: types of test data (with Mars Climate Orbiter challenge), alpha testing plan templates and examples, debugging guides for VSCode/PyCharm/Godot, testing documentation, AI-assisted test case generation, and the "Demo Day Disaster" activity. Strong existing coverage.

External Resources

Resource Source Format VCAA Mapping Why It's Useful
Real Python — Python Debugging With pdb Real Python Reading + code Debugging: breakpoints, stepping through code, inspecting variables Comprehensive guide to Python's built-in debugger. Covers breakpoints, stepping, and variable inspection. Good reference for students who want to understand debugging beyond IDE buttons.
PyCharm — Debug Your First Python Application JetBrains Reading + screenshots Debugging: breakpoints, stepping, IDE debugging tools Official PyCharm debugging tutorial. Step-by-step with screenshots. Directly relevant if students use PyCharm.
GeeksforGeeks — Difference Between Alpha and Beta Testing GeeksforGeeks Reading Alpha testing vs beta testing — conceptual understanding Clear comparison of alpha and beta testing. Helps students understand where C8 (alpha) ends and C9 (beta) begins.
W3Resource — Testing and Debugging in Python W3Resource Reading + code Testing, debugging, error types Comprehensive guide covering testing and debugging with Python code examples. Covers all three error types (syntax, logic, runtime).
Python Engineer — Python Debugger and breakpoint() Python Engineer Reading + code Debugging: breakpoint() function, pdb Focused tutorial on using Python's breakpoint() function (Python 3.7+). Quick, practical guide.
Object-Oriented Python — Debugging and Testing Imperial College Reading Debugging and testing in OOP context Debugging in an OOP context — relevant since C6 requires OOP. Shows how to debug class-based code.

Gaps — C8-1

  • Testing table format — no external resource provides a testing table template in the VCE format (test case, test data, expected output, actual output, pass/fail, action). The Criterion08/ templates are the best source.
  • Boundary value testing specifically for VCE — most testing resources are either too basic or enterprise-focused. A worked example showing boundary testing for a typical SAT project would help.
  • Video walkthrough of debugging in VSCode or PyCharm with breakpoints — the Criterion08/ materials mention these but a short screen recording of actually debugging a Python program would be more impactful.

C8-2: Design Modifications & Contingencies

Existing Materials (CriterionXX/)

Criterion08/ has "Save a Project" activity, design modification UI exercise, evaluation matrices update, and SRS recap. Good coverage.

External Resources

Resource Source Format VCAA Mapping Why It's Useful
No strong external resources found for this specific VCAA requirement. — — — —

Gaps — C8-2

  • Design modifications in VCE context — this is a VCAA-specific requirement (documenting modifications to designs and evaluation criteria based on development experience). No external resource covers this in a way that maps to the study design.
  • Contingency planning for software projects at a VCE level — most resources on contingency planning are for enterprise project management. A simple worked example for a student SAT project would be valuable.

  1. Real Python's pdb tutorial is the best external debugging reference. Good for students who want to understand debugging at a deeper level.
  2. PyCharm debugging tutorial — assign to students using PyCharm.
  3. For C8-2, the existing Criterion08/ materials are the best available — this is a VCAA-specific requirement with no good external equivalent.
  4. Consider creating a short screen recording of a live debugging session in VSCode or PyCharm, walking through setting breakpoints, stepping through code, and finding/fixing a bug.