This project would be most appropriate for a Year 4 undergraduate student but may be tailored for other cohorts.
In a programming lab session, it can be hard for lecturers and demonstrators to identify students who might require assistance. Some students might be reluctant to ask for help while others might not realize that they could benefit from assistance or that assistance is available.
This project will develop a prototype system to monitor the activity and progress of students in a programming lab in real-time and present information to instructors (e.g. lecturers, demonstrators) using a web-based dashboard.
Using Visual Studio Code as a prototype platform, the project will develop an extension for VSCode that captures key events (e.g. open, build, debug) and information (file name, error message). Events and information relating to all students in a lab session will be analyzed centrally and used to generate alerts for instructors on the dashboard.
A student undertaking this project will be encouraged to employ incrementally more sophisticated mechanisms for triggering and prioritizing alerts (e.g. anomaly detection, event stream processing) and for summarizing the activity of all students in a lab session.
Visual Studio Code extensions are developed using JavaScript or TypeScript and prior experience with one or both of these would be beneficial but not required. A student undertaking the project would be free to chose appropriate languages for other aspects of the project.