Unterstützung der Einführung in die prozedurale Progammierung mit Karel in C

Thema:
Unterstützung der Einführung in die prozedurale Progammierung mit Karel in C
Art:
BA
Betreuer:
Markus Heckner
Student:
N.N.
Professor:
Christian Wolff
Status:
ausgeschrieben
Stichworte:
karel software engineering
angelegt:
2015-06-23

Hintergrund

Aktuell ist die Programmiersprache C an deutschen Hochschulen und in der Industrie weit verbreitet und gehört immer noch zur Grundlagenausbildung vieler Informatik und Mathematikstudiengänge.

Auch an der OTH Regensburg findet die Einführung in die Programmierung in C statt.

Hierbei ergeben sich unterschiedliche Probleme (hier nur auszugweise und subjektiv dargestellt): * Hohe Hürden besonders zu Beginn - Studenten finden oft den Einstieg nicht * Motivation eingeschränkt, da nur „printlining“ * Insbesondere Verständnisprobleme komplexe Datenstrukturen wie 2-dimensionale Arrays * …

U.a. versucht Pattis (1995) mit Karel the Robot diese Einstiegshürden durch eine graphische Umgebung zu senken, die den Studenten sowohl reduzierte Komplexität der Sprache als auch direktes Feedback zum eigenen Programm gibt. Aktuelle Implementierungen für prozedurale Programmiersprachen sind derzeit aber nicht vorhanden oder sehr veraltet (vgl. weiterführende Literatur).

Zielsetzung der Arbeit

Im Rahmen der Arbeit sollen die aktuellen Probleme in der Grundlagenausbildung Software Engineering erhoben und dokumentiert werden (Insbesondere Rückgriff auf Forschung Informatikdidaktik). Basierend darauf soll ein Konzept für eine Umgebung wie Karel the Robot in C erstellt werden und eigene Version von entwickelt und anschließend evaluiert werden.

Konkrete Aufgaben

* Recherche und Aufbereitung der aktuellen Herausforderungen im Bereich Grundlagenausbildung Programmierung * Erarbeitung von Anforderungen an eine Umgebung, welche diese Herausforderungen adressieren soll * Gap Analyse: Was können aktuelle Implementierungen von „Karel the Robot“ noch nicht leisten * Implementierung Karel in C * Evaluation (Methode tbd), Einsatz in Kursen der OTH Regensburg

Erwartete Vorkenntnisse

* Interesse an prozeduraler Programmierung, idealerweise Vorkenntnisse in C * Interesse an didaktischen Fragestellungen in der Programmierausbildung

Weiterführende Quellen

Pattis, R.E. (1995). Karel the Robot. A Gentle Introduction to the Art of Programming. Wiley and Sons. Roberts. E. (2005). Karel the Robot learns Java. Available online: http://cs.stanford.edu/people/eroberts/karel-the-robot-learns-java.pdf Untch, R. (unbekannt). Karel Homepage. Available online: https://www.cs.mtsu.edu/~untch/karel/