Erleichterung der Korrektur von theoretischen und Programmier-Übungen in "Computational Engineering und Robotik" / "Scientific Computing", TU Darmstadt.
- Windows, Linux oder MacOS
- Linux:
xdg-utils
sollte installiert sein
- Linux:
- Python, getestet mit Python 3.12 und Python 3.13
- Docker (zur Korrektur der Programmierübungen)
- Moodle-Sprache muss Deutsch sein
-
Ein Python-venv installieren und aktivieren
-
Das Repository klonen
git clone https://github.com/TypingTobii/cer-tool.git
-
Das Tool mittels
pip
installierenpip install ./cer-tool
Damit cer-tool
auch aufgerufen werden kann, wenn das venv gerade nicht aktiv ist, kann das Skript cer-tool.ps1
(Windows) bzw. cer-tool.sh
(Linux/MacOS) sowie cer-tool.paths
in einen Ordner kopiert oder symlinked werden, der sich in der PATH-Umgebungsvariable befindet.
In cer-tool.paths
hinter ENV=
muss dann der Pfad zum venv angegeben werden.
Bevor das Tool nutzbar ist, müssen die Initialen gesetzt werden, die automatisch unter jeder Bewertung angefügt werden. Hierzu
cer-tool config edit
ausführen, initials
eingeben, danach die gewünschten Initialen, z.B. "MM"
eingeben und zweimal ENTER drücken.
Zur Bewertung von schriftlichen Übungen werden die folgenden Dateien benötigt:
- Die Abgaben der Studis
<submissions>
, die z.B. von Moodle über "Einreichungen" → "Aktionen" → "Alle Abgaben herunterladen" heruntergeladen werden können - Die Bewertungstabelle zur Übung
<table>
, von Moodle über "Einreichungen" → "Aktionen" → "Bewertungstabelle herunterladen" herunterzuladen - Die Zuteilung der Übungen
<groups>
, also "tut_??.txt"
Mit
cer-tool prepare -g <groups> -s <submissions>
werden die Abgaben der Studis durchsucht und alle zu bewertenden Abgaben in einen neu erstellten Ordner "submissions" extrahiert.
Die Abgaben können dann mit einem beliebigen PDF-Annotator oder einer beliebigen PDF-Notizen-App korrigiert werden.
Nach der Korrektur sollte die erreichte Punktzahl im Dateinamen eingetragen, also bspw. "Submission_Gr2b_Max Mustermann_133742_File 1_ --- pts.pdf" in "Submission_Gr2b_Max Mustermann_133742_File 1_ 9,5 pts.pdf" umbenannt werden.
Während der Bewertung kann Text-Feedback hinzugefügt werden, das auf Moodle später im Feld "Feedback als Kommentar" erscheint:
cer-tool edit-feedback -t <table> <name>
<name>
durch einen Teil des Vor- oder Nachnamens des Studis ersetzen. Das Tool sucht dann den richtigen Eintrag in der Bewertungstabelle.
Zum Abschluss
cer-tool finish -g <groups> -t <table> -sn <submission-name>
aufrufen, wobei <submission-name>
die Bezeichnung der Übung, z.B. "H03", ist (diese erscheint dann für die Studis im Dateinamen der Feedbackdatei). Die annotierten Lösungen werden standardmäßig im Ordner "submissions" gesucht und die Punktzahlen aus den Dateinamen gelesen.
Das Tool erzeugt nun eine "_out_....csv"-Datei und eine oder mehrere zip-Dateien:
Die zip-Dateien enthalten die annotierten Feedbackdateien, die in Moodle über "Einreichungen" → "Aktionen" → "Feedbackdateien als ZIP-Datei hochladen" hochgeladen werden können. Aufgrund der maximalen Dateigröße von aktuell 25 MB müssen mehrere Dateien einzeln hintereinander hochgeladen werden.
Die csv-Datei enthält Punktzahlen und Textfeedback, an das automatisch die Initialen angehangen wurden. Die Datei kann über "Einreichungen" → "Aktionen" → "Bewertungstabelle hochladen" hochgeladen werden. Möglicherweise ist es notwendig, die Option "Update von Datensätzen zulassen, die seit dem letzten Upload angepasst wurden" zu wählen, da sonst keine Änderungen erkannt werden. Die vom Tool ausgegebene Bewertungstabelle enthält nur die zugewiesenen Gruppen, es werden also keine anderen Bewertungen überschrieben.
Zur Bewertung von Programmierübungen werden die folgenden Dateien benötigt:
- Die Abgaben der Studis
<submissions>
, die z.B. von Moodle über "Einreichungen" → "Aktionen" → "Alle Abgaben herunterladen" heruntergeladen werden können - Die Bewertungstabelle zur Übung
<table>
, von Moodle über "Einreichungen" → "Aktionen" → "Bewertungstabelle herunterladen" herunterzuladen - Die Zuteilung der Übungen
<groups>
, also "tut_??.txt" - Die automatischen Tests
<package>
, also "sc_pex?_grading.zip"
Die Bewertung kann mit
cer-tool grade-pex -p <package> -g <groups> -s <submissions> -t <table>
gestartet werden. Das Tool erstellt zuerst den Docker-Container und geht dann die Abgaben der Studis interaktiv durch. Über "e" kann die Bewertung manuell angepasst werden, "osub" bzw. "osol" öffnen die Studi-Abgabe bzw. die Musterlösung mit dem Standard-Programm für ipynb-Dateien und "r" führt die automatischen Tests erneut aus (dies ist beispielsweise hilfreich, wenn die Studi-Abgabe überschüssige Zellen enthält und die automatischen Tests daher fehlschlagen).
Die Bewertungstabelle <table>
wird automatisch ausgefüllt und standardmäßig überschrieben. Die Datei kann genau wie bei den schriftlichen Übungen in Moodle hochgeladen werden.