1. Ausgangssituation

An der HTL Leonding gibt es vier Fachrichtungen (Abteilung):

  • Informatik

  • Medientechnik

  • Elektronik

  • Medizintechnik

und zusätzlich

  • Abendschule Informatik

  • Kolleg Informatik

In allen diesen Zweigen wird Informatik mehr oder weniger intensiv unterrichtet.

Das Bestreben einer HTL muss sein, die Qualität der Lehre in allen Bereichen zu sichern. Dazu gehört insbesondere die Koordination innerhalb der einzelnen Fachbereiche im Bereich "Informatik"

Diese Koordination findet einerseits durch den gesetzlich vorgegebenen Lehrplan und andererseits durch schulinterne Präzisierung und Interpretation des Lehrplans.

Der (informationstechnische) Unterricht an der HTL Leonding zeichnet sich durch einen hohe Praxisbezug aus, dh neben einem fundierten Theorerieunterricht wird Wert auf die praxisnahe Umsetzung in Form von Programmen, SQL-Statements usw. gelegt.

2. Problemstellung

Bei der Umsetzung treten folgende Probleme auf:

  1. Die Lernenden sind sehr heterogen bezüglich Vorkenntnisse, Leistungsbereitschaft und Leistungsvermögen. Den Lernenden sind daher für ihr jeweiliges Leistungsniveau Übungsbeispiele anzubieten.

  2. Die Erstellung von Übungsaufgaben, deren Korrektur sowie die Erstellung des Feedbacks für die Schüler ist sehr zeitaufwendig.

  3. Den neuen Lehrern an der Schule sind Unterlagen und Beispiele zur Verfügung zu stellen, um einen koordinierten Unterricht in allen Klassen sicherzustellen.

  4. Neben den Übungen im Rahmen des Unterrichts wünschen die Lernenden oft weitere Beispiele zum Üben.

3. Aufgabenstellung

Erstellung eines modularen Systems in mehreren Ausbaustufen.

Systemarchitektur grob

3.1. Übungsmodul icon leo code

Im Übungsmodul stehen den Lernenden für jedes Beispiel:

  1. die Angabe (Tab Instructions)

  2. ev. die verwendeten Tests (Tab Test-suite)

  3. sowohl eine Möglichkeit zum Upload der Lösung (Tab Solution)

Im folgenden sind Screenshots der Lernplattform https://exercism.io zu sehen

Überblick über die einzelnen Beispiele

exercism exercises overview

Beispielsangaben

exercism exercises instructions

Unittests

exercism exercises test suite

Upload für Lösungen

exercism exercises solution

3.1.1. Prüfung der Korrektheit

process unit testing

Der vom Lernenden erstellte Programmcode wird an ein Testsystem (hier jUnit) übergeben. Die Testergebnisse werden an die aufrufende Komponente (entweder Übungsmodus oder Prüfungsmodul) zurückgegeben.

Die Korrektheit soll mehrfach überprüft werden:

  • Ergebnisse auf Korrektheit (Unit-Tests)

  • Inhalt des Programmcodes überprüfen

    Beispiel:

    • Zum Lösen des Beispiels darf man nicht die Methode reverse() verwenden.

    • Es ist die Klasse StringBuilder zu verwenden.

  • System.out.print soll ebenfalls getestet werden können

3.1.2. Offene Fragen

  • Es ist zu prüfen, wie die Unittests technisch durchgeführt werden (ev. mit Jenkins)

  • Die Organisation der Beispiele ist zu prüfen.

    • Beispielsorientiert: Beispiele - Zuordnung zu Thema/Themen - Darstellung aller Programmiersprachen

      exercise structure example
    • Sprachenorientiert: Programmiersprache - Beispiele - Zuordnung zu Thema/Themen

      exercise structure language
  • Es ist zu klären, ob auch ein Online-Editor angeboten werden soll. zB Eclipse Theia

3.1.3. Private, organisationsinterne und öffentliche Beispiele

Berechtigte Personen (meist Lehrkräfte der HTL Leonding) können Beispiele erstellen und diese Beispiele entweder

  • veröffentlichen (public) - andere Lehrkräfte und Lernende haben Zugriff

  • privat setzen (private) - weder andere Lehrkräfte noch Lernendde können darauf zugreifen

  • organisationsintern: nur andere Lehrende dürfen auf die Beispiele zugreifen, aber keine Lernenden

Im Vorfeld der Arbeit sind bestehende Formate zur Darstellung von Lernaufgaben zu analysieren und auf ihre Verwendbarkeit zu prüfen (zB SCORM, LOM, IMS QTI).

3.2. Prüfungsmodul

Das Prüfungsmodul kann für Lernzielkontrollen oder Tests eingesetzt werden. Eine solche Prüfung kann sich aus Programmierbeispielen (aus LeoCode) und/oder aus Fragen aus dem Umfragemodul (LeoSurvey) zusammensetzen

leo survey ablauf

Das Prüfungsmodul übernimmt hierbei folgende Aufgaben:

3.2.1. Prüfungsvorbereitung

  • Zusammenstellen der Prüfungen aus vorhandenen Beispielen / Fragen

  • Festlegen des Bewertungssystems (Punktegewichtung der einzelnen Fragen)

  • Erstellen der TANs (Transaktionscodes)

3.2.2. Prüfungsdurchführung

  • Durchführung der Prüfung

  • Ev. zeitliche Restriktionen

  • Falls gewünscht werden den Teilnehmern die Ergebnisse sofort angezeigt

3.2.3. Prüfungsnachbereitung

  • Automatische Vorkorrektur der Prüfungen

  • Vorlage der Ergebnisse für die betreuende Person (meist Lehrkraft)

  • auf Wunsch, Weiterleitung der Ergebnisse an Teilnehmer (vorher Eingabe einer email-Adresses)

3.3. Umfragemodul icon leo survey

  • Es können beliebige Fragebögen (Questionnaire) erstellt werden werden

  • Folgende Fragetypen stehen (zumindest) zur Verfügung

    • Freitext

    • Multiple Choice

    • Single Choice

    • Ja/Nein-Fragen

  • Umfragen (Surveys) können erstellt werden

    • Zuordung zu Fragebogen

    • Datumsbereich zur Beantwortung der Umfrage

  • Auswertung der Umfrage

    • Graphische Auswertung mit Diagrammen

    • Textuelle Darstellung er Freitexte

3.4. Benutzerauthentifizierung

  • Benutzerdaten sowohl der Betreuungspersonen (Lehrkräfte) als auch der Lernenden.

  • Anbindung zum LDAP der HTL Leonding

  • Die Übungshistorie der Lernenden wird dokumentiert → Portfolio

3.5. Syllabus - Lehrplan - Lehrstruktur

  • Hier können beliebige Lehrpläne, Syllabi usw eingegeben werden.

  • Die Beispiele können über Tags diesen Lehrplänen/Syllabi zugeordnet werden. Dabei wird ein Tag sowohl den Beispielen als auch einem Abschnitt im Lehrplan/Syllabus zugeordnet.

  • Lehrpläne/Syllabi können kopiert werden (unter Mitnahme der Tags)

4. Anforderungen

  • Die Teilsysteme sind lose gekoppelt, Informationen / Daten werden durch klar definierte Schnittstellen ausgetauscht.

  • Das System "LeoLearn" kann beliebig erweitert werden; durch zB ein Vokabellernmodul

  • Schnittstellen zu LMS zB Moodle, BigBlueButton

  • Das System ist mehrsprachig (I18N). So kann man zB die Instructions in mehreren Sprachen angeben. In den Ansichten / Übersichten der Bsp werden die verfügbaren Sprachen als Icons angezeigt.

  • Die technischen Plattformen (Programmiersprachen) der Teilsysteme muss für die Funktion unerheblich sein.

5. Ausbaustufen

5.1. Erstellung des Übungsmoduls (LeoCode) mit der Programmiersprache Java

5.2. Erstellung des Umfragemoduls

5.3. Erstellung der Benutzerverwaltung

5.4. Erstellung des Prüfungsmoduls

6. Mögliche Erweiterungen

  • Die Lernenden können eigene Beispiele posten

  • Die Lösungen können veröffentlicht werden

  • Kommentare können sowohl zu Beispielsangaben als auch Lösungen hinzugefügt werden

7. Ziele

  • Routineaufgaben der Lehrenden, die den Lernenden keinen Mehrwert bringen, werden automatisiert. Die Lehrenden können sich mehr der individuellen Betreuung der Lernenden bzw Tätigkeiten widmen, die den Lehrenden unmittelbar nützen.

  • Eine verstärkte Koordination des Unterrichts in den jeweiligen Schulstufen und auch zwischen Parallelklassen.

  • (Neu-)lehrern steht ein große, speziell auf den Unterricht der Bildungseinrichtung abgestimmte Sammlung von Beispielen zur Verfügung.

  • Die Lernenden finden ein großes Angebot von Beispielen - zusätzlich zu den Unterrichtsbeispielen - vor.

8. Diplomarbeit Christian Donnabauer