GML15_header_RGB_02

Automatisierte Bewertung von Programmieraufgaben

Michael Striewe, Universität Duisburg-Essen

Ziel der Programmierausbildung ist es, die Studierenden in die Lage zu versetzen, eigenständig Programmcode zu schreiben, der eine gegebene Aufgabestellung erfüllt. Dazu ist es unerlässlich, dass die Studierenden einerseits regelmäßig üben und andererseits ihre Fähigkeiten in der Prüfung angemessen berücksichtigt werden. Um beiden Zielen gerecht zu werden, führt die Universität Duisburg-Essen in der Programmierausbildung der Erstsemester am Campus Essen seit 2007 nicht nur einen klassischen Vorlesungs- und Übungsbetrieb durch, sondern bietet im Semesterverlauf regelmäßige Testate an, in denen eine Mindestpunktzahl erworben werden muss, um an der abschließenden Klausur teilnehmen zu dürfen. Die Studierenden werden so einerseits zu regelmäßiger Übung angehalten und es ist andererseits sichergestellt, dass nur Studierende mit hinreichenden Programmierfähigkeiten die Vorlesung erfolgreich abschließen.

Aufgrund von Teilnehmerzahlen von über 500 Studierenden im Semester ist es nicht möglich, Übungen und Testate manuell zu korrigieren und zeitnah mit Feedback zu versehen. Daher kommt zur automatischen Bewertung der Programmieraufgaben die Software JACK zum Einsatz, deren Entwicklung ebenfalls von der Universität Duisburg-Essen betrieben wird. Die Kernfunktionalität der Software besteht darin, Lösungen zu Übungs- und Prüfungsaufgaben automatisch nach verschiedenen Kriterien und individuellen Vorgaben je nach Aufgabenstellung zu analysieren und dazu passende Rückmeldungen in Form von Punktzahlen und hilfreichen Feedbackmeldungen zu erzeugen. Die didaktischen und technischen Möglichkeiten des Systems – auch im Vergleich zu anderen derartigen Systemen –sowie der nötige Aufwand zur Vorbereitung geeigneter Aufgaben werden in diesem Vortrag vorgestellt.