automatisierte bewertung von programmieraufgaben · • prüfungsbetrieb (summatives assessment):...
TRANSCRIPT
© p
alu
no
Automatisierte Bewertung von Programmieraufgaben
Dr. Michael Striewe
Universität Duisburg-Essen
© p
alu
no
• Automatische Bewertung von Programmieraufgaben hat eine sehr lange Forschungstradition: Jack Hollingsworth: Automatic graders for programming classes, Communications of the ACM, 1960, Volume 3, 528-529
• Seitdem haben sich zwei Dinge geändert:
• Programmieren ist schwieriger geworden, da es mehr und komplexere Programmiersprachen gibt
• Computer sind leistungsfähiger geworden
• Das Grundproblem ist aber noch immer dasselbe:
• Wie kann ein Computer feststellen, ob eine Lösung korrekt ist?
• Wie kann ein Computer sinnvolles Feedback geben?
Über 50 Jahre Forschung
© p
alu
no
• Ausgangslage (vor etwa 15 Jahren):
• Grundlagenvorlesung „Programmierung“ mit ~600 Teilnehmern
• ~80% Durchfallquote in der Klausur
• Grund: Mangelnde Beschäftigung mit Übungsaufgaben
• Lösungsansatz 1 (WS 2001/2002):
• Zwei manuell kontrollierte Testate im Semester
• Wegen Arbeitsaufwands gescheitert
• Lösungsansatz 2 (ab WS 2005/2006):
• Sechs automatisch kontrollierte Testate im Semester (+ Verpflichtende Übungsaufgaben)
• Arbeitsaufwand machbar, aber Raumproblem
• Verbesserung (ab WS 2009/2010):
• Nutzung der PC-Hall statt kleiner Rechnerpools
• Funktionierendes Modell für den Regelbetrieb
Unsere eigene Geschichte
3
© p
alu
no
• Kontrolle von Java-Aufgaben nach verschiedenen Kriterien:
• Statische Prüfung
• Compiler
• Elemente des Quellcodes
• Codestil
• Dynamische Prüfung
• Testfälle
• Code-Coverage
• Laufzeit
• Feedback in verschiedenen Formen:
• Punktzahl
• Fehlermeldungen
• Traces
• Visualisierung von Datenstrukturen
Das E-Assessment-System JACK
4
© p
alu
no
Das E-Assessment-System JACK
5
© p
alu
no
Das E-Assessment-System JACK
6
© p
alu
no
• Freier Übungsbetrieb (Self-Assessment):
• Fokus auf hilfreiches Feedback und Visualisierung
• Punktzahl und –fortschritt als Motivation
• Adaptives Systemverhalten
• Strukturierte Übung (Formatives Assessment):
• Fokus auf faire Bepunktung
• Feedback als zusätzlicher Leistungsindikator
• Adaptive Leistungsmessung
• Prüfungsbetrieb (Summatives Assessment):
• Fokus auf faire Bepunktung
• Feedback als erklärender Kommentar
• Manuelle Nachkorrektur
Einsatzszenarien
7
© p
alu
no
• Praktomat
• 1998 entwickelt (Uni Passau), 2011 grundlegend überarbeitet (Uni Karlsruhe)
• Compiler, Test über JUnit, Code-Stil über CheckStyle
• ASB
• 2007 entwickelt (HS Trier)
• U.a. statische Prüfung des Bytecodes über FindBugs
• GATE
• 2011 entwickelt (TU Clausthal)
• Prüfungsorientierter Einreichungsprozess
• Plagiatskontrolle
• eduComponents (2006), Graja (2013)
• Keine Standalone-Tools, sondern zur Integration in CMS bzw. LMS
• Insgesamt über 25 Systeme in den letzten 15 Jahren
Weitere Systeme (für Java)
8
© p
alu
no
• Vorbereitung pro Aufgabe:
• Aufgabenstellung und Musterlösung
• Testfälle, Prüfregeln, etc. inklusive aussagekräftiger Fehlermeldungen
• Punkteschemata, Gewichtungen
• Anmeldung, Login-Kennungen
• Nachbereitung pro Aufgabe:
• Bei Übungen stichprobenartige Überwachung: ~1 Stunde
• … auch bei 1.500 Abgaben bei einer Übungsaufgabe!
• Bei Testaten Endkontrolle: ~1 Stunde
• Gesamtaufwand pro Testat: 5-10 Stunden (+ Aufsicht)
Aufwand bei uns
9
© p
alu
no
• Vorbereitung ist wichtig
• Nimmt mehr Zeit ein als die Nachbereitung
• Aufwand reduziert sich später wieder durch Wiederverwendung von Inhalten
• Übliche Arbeitsweisen und Notfallpläne passen nicht mehr unbedingt
• Keine Eingriffe „mal eben“ während/nach dem Testat
• Dafür insgesamt sauberere Durchführung, Nachbearbeitung, Dokumentation
• Die Ansprüche steigen
• Studierende erwarten schnelle Rückmeldung
• E-Assessments werden als fester Bestandteil der Lehre gesehen
Stolpersteine
10
© p
alu
no
• Durchführung elektronischer Prüfungen auch für komplexe Aufgabentypen möglich
• Gegenüber anderen Prüfungsformen deutlich erhöhter Vorbereitungsaufwand für
• organisatorische Aspekte (z.B. Bereitstellung geeigneter Räume)
• inhaltliche Aspekte (z.B. Konfiguration der Punktevergabe)
• Gleichzeitig noch größere Zeitersparnis bei der Nachbereitung und hohe Flexibilität bei der Wiederverwendung bereits konfigurierter Aufgaben
• Sicht der Studierenden:
• Keine spezifischen Schwierigkeiten mit dieser Prüfungsform
• Mit Durchführungsmodus und Ergebnissen der automatischen Bewertung im Wesentlichen einverstanden
• Bisher keinerlei prüfungsrechtliche Schwierigkeiten
Fazit
11
© p
alu
no
• http://www.s3.uni-duisburg-essen.de/forschung/e-learning-and-e-assessment/jack/
• http://jack-demo.s3.uni-due.de/
• Dr. Michael Striewe Universität Duisburg-Essen [email protected]
Kontakt
12