# 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](https://realpython.com/python-debugging-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](https://www.jetbrains.com/help/pycharm/debugging-your-first-python-application.html) | 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](https://www.geeksforgeeks.org/software-engineering/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](https://www.w3resource.com/python/python-testing-and-debugging-with-examples.php) | 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()](https://www.python-engineer.com/posts/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](https://object-oriented-python.github.io/8_debugging.html) | 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. --- ## Recommended Actions 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.
