Design, Implementierung und Evaluation einer IDE-Integrierten Lösung zum konfliktfreien, einfachen und transparenten Wechsel zwischen Quellcodeversionen für Programmieranfänger

Hintergrund

Im Rahmen der Arbeit werden Möglichkeiten zur Entwicklung einer IDE-Integrierten Lösung für den einfachen Wechsel zwischen und die Gegenüberstellung von verschiedenen Quellcode-Versionen untersucht. Zielgruppe der Anwendung sind Programmieranfänger (Novizen) mit wenigen bis gar keinen Kenntnissen auf dem Gebiet der Programmierung, IDE-Bedienung oder Versionskontrolle. Beispielhafte Anwendungsfälle sind das gegenüberstellende Lernen von Programmiersprachen, Programmierparadigmen, Codestyles oder der Vergleich von Lösungsansätze mit eigenen Implementierung.

Zielsetzung der Arbeit

Ziel der Arbeit sind Design, Implementierung und Evaluation einer IDE-Integrierten Lösung zum konfliktfreien, einfachen und transparenten Wechsel zwischen Quellcodeversionen für Programmieranfänger. Auf Basis von verwandten Arbeiten werden die Möglichkeiten und Anforderungen der Entwicklung eines IDE-Plugins zum Wechsel zwischen und der Gegenüberstellung von Quellcodeversionen ermittelt. Dabei werden die Bedürfnisse von Programmieranfängern die wenig oder keine Kenntnisse von Programmierung, IDE-Bedienung oder Versionskontrolle haben in der Anforderungserhebung berücksichtigt. Auf Basis der ermittelten Anforderungen und Constraints wird ein Prototyp designt und implementiert. Dabei wird für die Evaluation des Prototyps ein Anwendungsfall der Programmiersprachen Java und Kotlin entwickelt. Anschließend wird der Prototyp in einer Laborstudie mit Teilnehmern aus der Zielgruppe (Programmieranfänger)evaluiert um festzustellen, ob die Anforderungen vom Artefakt erfüllt werden.

Konkrete Aufgaben

Anforderungserhebung durch Rechereche von verwandten Arbeiten und den Bedürfnissen von Programmieranfängern

Design und Implementierung eines prototypischen IDE-Plugins

Entwicklung eines Anwendungsfalles zur Evaluierung

Evaluation des Prototypen in einer Laborstudie mit Teilnehmern aus der Zielgruppe

Erwartete Vorkenntnisse

Kenntnisse im Bereich der Softwareentwicklung

Kenntnisse im Bereich der Versionskontrolle

Weiterführende Quellen

-