Plattformübergreifende Erfassen des Programmierverhaltens von Novizen

Hintergrund

Diese Arbeit schafft ein Artefakt zur Untersuchung des individuellen Programmierverhaltens von Personen. Im Fokus steht hier der Lernende und dessen Schwächen im Bereich Programmierung. Erkenntnisse die durch das Analysieren von Programmierverhalten gewonnen werden, können genutzt werden um den Lernprozess zu verbessern und durch neuartige Werkzeuge zu unterstützen. Um zu diesen Erkenntnissen zu gelangen, muss Programmierverhalten beobachtet werden. Jedoch erschwert das eher heterogene Feld der Programmierumgebungen das einheitliche Aufzeichnen von Programmierverhalten. Diese Arbeit erschafft ein Artefakt mit dem Programmierverhalten unabhängig der genutzten IDE in einer strukturierten Form aufgezeichnet werden kann.

Zielsetzung der Arbeit

Ziel der Arbeit ist es ein erweiterbares System bereitzustellen, mit dem Programmierverhalten möglichst technik-unabhängig in strukturierter Art aufgezeichnet werden kann. Das System dient zur Aufzeichnung der Interaktion mit einer Programmierumgebung. Dazu wird ein Format bereit gestellt das es ermöglicht unterschiedlichste Programmierumgebungen mit dem System zu nutzen. Dazu wird für die genutzte Programmierumgebung ein Plugin entwickelt mit dem Daten über individuelles Programmierverhalten ans System gesendet werden. Im Rahmen dieser Arbeit wird das System genutzt um Programmierverhalten von Novizen über einen bestimmten Zeitraum aufzuzeichnen und anschließend mittels etablierter Metriken zu analysieren.

Konkrete Aufgaben

Programmierverhalten dem Kontext der Arbeit entsprechend definieren

Programmierkontexte der Studierenden evaluieren

Erarbeitung bereits etablierter Metriken zur Analyse von individuellem Programmierverhalten

Herausarbeitung und Definition eines Datenformats für die Aufzeichnung von Programmierverhalten unter Berücksichtung der APIs der Editoren und den Ansprüchen der verwendeten Metriken

Implementierung der Editor-Plugins und der dazugehörigen Infrastruktur

Erwartete Vorkenntnisse

Sehr gute Kenntnisse im Bereich der Softwaretechnik und Programmierung

Gute Kenntnisse der Programmierkurse am Lehrstuhl für Medieninformatik

Erfahrungen im Bereich der empirischen Forschung

Weiterführende Quellen

-