arbeiten:design_implementierung_und_evaluation_einer_ide-integrierten_loesung_zum_konfliktfreien_einfachen_und_transparenten_wechsel_zwischen_quellcodeversionen_fuer_programmieranfaenger

Entwicklung einer benutzerfreundlichen Lösung für den Datei- und Projektbasierten Quellcodevergleich innerhalb von Entwicklungsumgebungen

Thema:
Entwicklung einer benutzerfreundlichen Lösung für den Datei- und Projektbasierten Quellcodevergleich innerhalb von Entwicklungsumgebungen
Art:
BA
BetreuerIn:
Alexander Bazo
BearbeiterIn:
Niklas Woiton
ErstgutachterIn:
Christian Wolff
ZweitgutachterIn:
N.N.
Status:
abgeschlossen
Stichworte:
Software Engineering, Programming Education, Assistance Systems, Assistentssysteme für die Programmierausbildung
angelegt:
2019-06-07
Beginn:
2019-07-22
Antrittsvortrag:
2019-07-15
Abgabe:
2019-09-24
Textlizenz:
Unbekannt
Codelizenz:
Unbekannt

Hintergrund

Es gibt viele Programmieranwendungen bei denen man unterschiedliche Quellcodeversionen miteinander vergleichen oder sie gleichzeitig bearbeiten möchte. Beispielhafte Anwendungsfälle sind das gegenüberstellende Lernen von Programmiersprachen, Programmierparadigmen, Codestyles oder der Vergleich von Lösungsansätzen mit der eigenen Implementierung. Aber auch die gleichzeitige Bearbeitung von mehreren Zweigen (Branches) in einem Versionskontrollsystem. Dabei ist es meist notwendig die Quellcodeversionen einzeln in mehreren Fenstern zu öffnen und bei einem Wechsel zwischen vergleichbaren Dateien muss dieser in jedem Fenster einzeln durchgeführt werden. Eine Entwicklungsumgebung (IDE) in der man intern zwischen unterschiedlichen Quellcodeversionen wechseln kann und die es erlaubt die Quellcodes innerhalb des Fensters gegenüberzustellen könnte den Vergleich und die gleichzeitige Bearbeitung von Dateien vereinfachen. Insbesondere für Programmieranfänger die noch wenig Kenntnisse von Programmierung, IDE-Bedienung oder Versionskontrolle haben könnte das eine hilfreiche Funktionalität sein. Im Rahmen dieser Arbeit gilt es ein Plugin zu entwickeln, welches diese Funktionalität in eine IDE integriert und zu untersuchen, ob es die Anforderungen an ein solches Artefakt erfüllt.

Zielsetzung der Arbeit

Ziel der Arbeit ist die Entwicklung einer benutzerfreundlichen Lösung für den Datei- und Projektbasierten Quellcodevergleich innerhalb von Entwicklungsumgebungen. 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. Der Nutzer soll keine Berührung mit dem unterliegenden System haben und durch das einfache anklicken von Buttons zwischen den verschiedenen Quellcodeversionen wechseln und sie gegenüberstellen können. Auf Basis der ermittelten Anforderungen und Constraints wird ein Prototyp designt und implementiert. Dazu wird für die Evaluation des Prototyps eine beispielhafte Anwendung entwickelt. Anschließend wird der Prototyp in einer Laborstudie mit Teilnehmern aus der Zielgruppe (Programmieranfänger)evaluiert um festzustellen, ob die Anforderungen an das Artefakt erfüllt werden.

Konkrete Aufgaben

  • Anforderungserhebung durch Recherche von verwandten Arbeiten und den Bedürfnissen von Programmieranfängern
  • Design und Implementierung eines prototypischen IDE-Plugins
  • Entwicklung einer beispielhaften Anwendung 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

-