Requirements
Feature Requirements
Features:
- Chat bot
- Require tutor interaction
- Time-based log
- Stages for tasks
- Commit system for uploads and comments
- Selective file replacer
- Diff viewer
- Testing environment
Chat bot
A chat bot that takes on existing features and mediates new features:
Require tutor interaction
When a new upload event occurs, the tutor is required to send a substantive message to their student. This can be communicated to the tutor via the chat bot.
Time-based log
Displaying student/tutor and teacher events in a time-based log with the ability to scroll back and view previous events. This uses a git-based ruby backend to store submission files. There is a repository created for each individual submission task.
Stages for tasks
The implementation of stages as extra resources for students who require more resources and confidence. This enables students to tackle the task in different ways to help support their learning.
Commit system
The implementation of a commit system for tasks, enabling a set of mandatory core files to be uploaded in the form of a commit.
File replacer
The ability for students, tutors/teachers to view submitted files in their browser as well as write and view submitted comments regarding those files. The file replacer is supported by the uplifted file management system.
Diff viewer
The ability for tutors to be able to compare code files submitted by students via a difference viewer.
Testing environment
An emulation of the back-end is required as a proof-of-concept. The emulation also serves as an education piece for future collaborators.