sagemathinc / cocalc

CoCalc: Collaborative Calculation in the Cloud
https://CoCalc.com
Other
1.16k stars 212 forks source link

Add support for exam mode to course files #7110

Open novoselt opened 9 months ago

novoselt commented 9 months ago

Problem: when using CoCalc for exams, it is desirable that students are not able to access their other projects, only the designated "exam project", which is empty except for exam files. Then instructors/TAs should only enforce that students are not using other websites than CoCalc.

Bonus: allow using of the course license for this exam project as well, perhaps even with boosted RAM or CPU.

Suggested implementation: 1) each project gets metadata like "is_blocked" which is of course False by default 2) course file gets a button "Start Exam" and either a button "End Exam" or a box to enter time duration (4 hours have to be supported, not sure about longer). 3) pressing that button results in ALL projects of all students enrolled in the course switched to is_blocked=True 4) a new and empty Exam Project appears in their account (not sure if these have to be made in advance so that there are no 100 projects created and started at once), with the same license applied as before, potentially with a "bonus exam booster", this project is not blocked 5) there is a way similar to distributing homework, perhaps using the exact same interface and the same file, to distribute exam materials to these projects , i.e. for the course management framework these exam projects "take place of regular student projects" 6) work is collected for grading in the end, "Exam Project" is cleaned up and disabled/removed, while all others are enabled again 7) returning graded exam materials pushes them to "regular course projects" for the students, that's where some sneaky implementation of step 5 can be handy

math-sl commented 2 days ago

I was about to create a feature request just for "6. work is collected for grading in the end, "Exam Project" is cleaned up and disabled/removed, while all others are enabled again". This would be in itself quite useful in situations where we don't want the exam material to be available as soon as a student as finished the examen and leaves the room.

We can manually delete material in student's assignment folders, but this is quite cumbersome: collect, open student project, delete files.

A "Collect and delete" button would probably be sufficient, even if a full "exam mode" would be nice, if it can be used to optionally limit access to other material - in some exams, access to course material is allowed.

williamstein commented 2 days ago

was about to create a feature request just for "6. work is collected for grading in the end, "Exam Project"

Please do create a new issue for that and put a link here to it. Say as much as you want as well regarding details!