Skip to content

spogoda-lab/cs-autograder-feedback-system

Repository files navigation

Automated Assessment & Feedback System

GCSE Computer Science — Automated Assessment System (Egyptian Multiplication Example)

👋 Start here

Use the links below to explore the project:

Overview

An automated assessment and feedback pipeline for a GCSE Computer Science programming task, built using the Egyptian Multiplication task from the Time2Code course by Craig'n'Dave as a reference context.

Students push their code to GitHub and receive structured, criterion-by-criterion feedback within seconds — without any manual teacher marking.


Why this matters

Teaching programming in schools is constrained by a persistent gap:

  • students write code, but struggle to connect it to exam concepts
  • assessment criteria are often implicit rather than visible
  • feedback arrives too late to shape learning during the process

This project addresses that gap directly.

In a single automated feedback loop it combines:

  • structural assessment (how the program is built)
  • correctness testing (does it work across cases)
  • specification mapping (what concepts are evidenced)

This system:

  • provides immediate feedback on every submission
  • aligns directly to assessment criteria
  • supports iterative improvement
  • frees teacher time for targeted intervention

What is in this repository

File / Folder What it is
student_README.md The full task specification (what students see)
main.py A working solution (included so the system can be seen running immediately)
tests/ The automated test suite
.github/workflows/classroom.yml The GitHub Actions pipeline
DEMO.md Step-by-step guide to trying the system yourself

Note on main.py: In classroom use, students receive a near-blank starter file and write their own code from scratch. A working solution is included here so the full pipeline can be seen running immediately without writing any Python.


Attribution

This project is based on the Egyptian Multiplication programming task from the Time2Code course by Craig’n’Dave.

The original task structure informed the initial design of this system.

However, the following elements of the automated assessment approach are original work developed independently:

  • the test architecture
  • structural grading model
  • specification mapping
  • feedback generation system

are original work developed independently.

This repository does not include or reproduce any proprietary or paywalled materials from Craig’n’Dave Ltd.

This project is not affiliated with or endorsed by Craig’n’Dave Ltd.

Licensing

Code

All original code in this repository is licensed under the MIT License.

Documentation

All original documentation (README, DEMO, case study, and supporting materials) is licensed under the Creative Commons Attribution 4.0 International (CC BY 4.0) license.

Third-party material

This project references a task from the Time2Code course by Craig’n’Dave.

About

Automated assessment demo for a Python programming task using GitHub Actions, pytest, and feedback artefacts.

Topics

Resources

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.MD
Unknown
license-docs.md

Stars

Watchers

Forks

Contributors

Languages