JupyterHub Integration

Durch die JupyterHub-Integration können im JupyterLab (webbasierte Benutzeroberfläche innerhalb des JupyterHub) erstellte/bearbeitete Jupyter Notebooks über die Aktivität „Aufgabe“ von Lehrenden bereitgestellt und von Studierenden bearbeitet und abgegeben werden. Dies ermöglicht eine Integration von Programmier-Aufgaben in die Moodlekurs-Logik.

Jupyter Notebooks sind digitale Notizbücher, in denen neben einfachem Text direkt programmiert oder Daten analysiert werden können. In ihrem JupyterLab können Anwender eigene Ordner und Jupyter Notebooks erstellen und bearbeiten. Diese können dann in der Aktivität „Aufgabe“ hochgeladen werden. Der Zugang zum JupyterLab erfolgt ebenfalls über einen Link innerhalb der Aktivität.

Voraussetzung zur Nutzung der JupyterHub Integration ist das Vorhandensein eines Jupyter-Servers des Fachbereichs. Existiert dieser noch nicht, müssen Sie sich zunächst an das Jupyter-Team über wenden, welches eine Serverinstanz für Sie bereitstellt. Anschließend kontaktieren Sie uns über unter Angabe der erhaltenen Server-URL, sodass wir die Verknüpfung zu Moodle herstellen können.

Ist der entsprechende Jupyter-Server vorhanden, muss dieser im Moodle-Kurs zunächst in den Einstellungen ausgewählt werden. Navigieren Sie im Kurs zu Einstellungen > Jupyterhub Server Integration und wählen Sie im Drop-Down-Menü den passenden Server aus. Studierende müssen einmalig vom jeweiligen Jupyterhub-Administrator auf dem entsprechenden JupyterLab manuell hinzugefügt werden. Dazu kontaktieren Studierende in der Regel die Lehrperson des jeweiligen Moodle-Kurses. Nun ist der Kurs zur Bereitstellung und Abgabe von Jupyter Notebooks bereit.

Das JupyterHub Plugin ist in der Aktivität „Aufgabe“ integriert. Schalten Sie zur Erstellung einer „Aufgaben“-Aktivität zunächst in den Bearbeitungsmodus und klicken Sie auf Aktivität oder Material anlegen. Wählen Sie nun die Aktivität Aufgabe aus. In den Aktivitätseinstellungen navigieren Sie nun zum Abschnitt „Abgabetypen“. Hier kann nun auch „Jupyter notebooks“ ausgewählt werden. Nach Setzen des entsprechenden Häkchens wird nun der mit Ihrer TU-ID verknüpfte Workspace aus dem zuvor in den Kurseinstellungen gewählten Jupyterhub geladen.

Durch die Verknüpfung kann über die Moodle-Aktivität im Nachhinein auf den eigenen Workspace zugegriffen werden, indem sich mit den TU-Anmeldedaten eingeloggt wird. Darüber hinaus werden die Ordnerverzeichnisse des JupyterLabs in Moodle geladen, sodass diese ausgewählt werden können. Erstellen Sie also in Ihrem JupyterLab einen neuen Ordner, kann dieser anschließend in der Aktivität Aufgabe zum Hochladen ausgewählt werden. Zur Synchronisation ist innerhalb der Aktivität eventuell ein Klick auf „Refresh tree“ notwendig (siehe Screenshots „Ordnerstruktur in der Moodle-Aktivität“ und „Ordnerstruktur im JupyterLab“).

Wählen Sie im Feld „Source folder“ den Ordner aus, welcher die zu bearbeitende Aufgabe beinhaltet, in dem Sie diesen in der unteren Ordnerstruktur auswählen. Es können an dieser Stelle nur Verzeichnisse, jedoch keine Dateien ausgewählt werden. Alle weiteren Einstellungsmöglichkeiten sind die bekannten der Aktivität „Aufgabe“.

Hinweis: Ihrem JupyterHub wird automatisch ein Ordner namens „moodle“ hinzugefügt. Dieser ist notwendig, da JupyterHub keinen Zugriff auf Systemverzeichnisse erlaubt. Sie können allerdings nach Ihren Wünschen andere eigene Ordner anlegen und müssen nicht zwingend den moodle-Ordner nutzen. Die Ordnerstruktur bearbeiten Sie dabei immer in Ihrem persönlichen JupyterLab und nicht auf Moodle.

Ordnerstruktur in der Moodle-Aktivität

Ordnerstruktur im JupyterLab

Studierende können sich die Inhalte des in der Aufgabe bereitsgestellten Ordners in ihr eigenes JupyterLab ziehen und dort die Aufgaben bearbeiten. Dafür können sich die Studierenden über einen Klick auf Get a copy of the assignment eine Kopie des Ordners in einen ihrer eigenen Ordner laden, welcher im nächsten Schritt ausgewählt wird. Nach erfolgreicher Kopie wird der Link zum entsprechenden Ordner im eigenen JupyterHub angezeigt und die Aufgabe kann dort direkt bearbeitet werden. Nach Bearbeitung der Aufgabe können die Studierenden über den Button Aufgabenlösung hinzufügen ihre Lösungen abgeben. Dazu muss im nächsten Schritt der Ordner ihres JupyterLabs ausgewählt werden, in dem sich die bearbeiteten Aufgaben befinden, und auf Änderungen speichern geklickt werden.

Kopie laden

Zielordner wählen

Link zum eigenen JupyterLab

Als lehrende Person können Sie sich die Abgaben der Studierenden wiederum in Ihr JupyterLab laden, sichten und anschließend bewerten. Innerhalb der Aktivität können Sie auf Bewerten klicken. Anschließend öffnen sich die Abgaben der Studierenden. Da Jupyter-Ordner nicht innerhalb von Moodle direkt angezeigt werden können, müssen Sie sich den abgegebenen Ordner über View submission in Ihr eigenes JupyterHub ziehen. Klicken Sie View submission, so werden Sie danach aufgefordert einen Zielordner innerhalb Ihres JupyterLabs anzugeben, um dort eine Kopie der studentischen Abgabe zu erstellen. Die Kopie beinhaltet dann das Verzeichnis der Abgabe des Studierenden. Dort können Sie die abgegebene Lösung einsehen und nach Einsicht in Moodle bewerten.

Abgabe kopieren

Zielordner für Kopie der Abgabe auswählen