Untersützung des Code-Verständnis bei Programmier-Novizen durch kontext-nahe Visualsierung von Call-Hierachien

Hintergrund

Bei dem Programmieren einer Lösung für eine bestimmte Aufgabe teilt man die entsprechende Routine meist in Subroutinen auf, die dann eventuell wieder weiter aufgeteilt werden. Der Aufruf der Routinen bildet nun eine Baumstruktur oder einen Graphen. Alle Subroutinen aus derselben Datei werden in einem herkömmlichen Editor allerdings linear untereinander angezeigt. Wenn man nun den Programmverlauf nachvollziehen will, muss man gegebenenfalls viel durch die Datei navigieren um die entsprechenden Subroutinen zu finden, dann wieder zurück zur Ursprungsroutine zu kommen und eine weitere Subroutine zu untersuchen. Diese fehlende Übersicht erschwert es fremden Code oder älteren eigenen Code zu verstehen. Grade Programmieranfänger stellt das vor eine große Herausforderung.

Zielsetzung der Arbeit

Es soll ein Plugin für die Entwicklungsumgebung IntelliJ entwickelt werden, dass die Call-Hierarchie der Methoden in einer Java-Klasse visualisiert. Das Zielgruppe sind dabei Programmieranfänger, die bereits mit der Programmiersprache Java vertraut sind, aber erst wenig Routine besitzen. Dementsprechend soll die Benutzung möglichst einfach sein und wenig Vorkenntnisse voraus setzten. Die Visualisierung soll eng mit dem Code verzahnt sein, damit die Nutzer die Verbindung zwischen dem Code und der logischen Struktur des Programmes verstehen.

Konkrete Aufgaben

Ausarbeitung eines geeigneten Konzepts zur Visualisierung einer Call-Hierarchie

Implementierung dieser Visualisierung als Plugin für die IntelliJ-Plattform

Evaluation des Plugins mit Programmier-Novizen

Erwartete Vorkenntnisse

-

Weiterführende Quellen

-