arbeiten:design_implementierung_und_evaluation_einer_ide-integrierten_loesung_zum_konfliktfreien_einfachen_und_transparenten_wechsel_zwischen_quellcodeversionen_fuer_programmieranfaenger

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
arbeiten:design_implementierung_und_evaluation_einer_ide-integrierten_loesung_zum_konfliktfreien_einfachen_und_transparenten_wechsel_zwischen_quellcodeversionen_fuer_programmieranfaenger [08.07.2019 09:40] won01562arbeiten:design_implementierung_und_evaluation_einer_ide-integrierten_loesung_zum_konfliktfreien_einfachen_und_transparenten_wechsel_zwischen_quellcodeversionen_fuer_programmieranfaenger [14.02.2022 08:35] (aktuell) – [Data-Entry] Alexander Bazo
Zeile 1: Zeile 1:
-====== Design, Implementierung und Evaluation einer IDE-Integrierten Lösung zum konfliktfreien, einfachen und transparenten Wechsel zwischen Quellcodeversionen für Programmieranfänger ======+====== Entwicklung einer benutzerfreundlichen Lösung für den Datei- und Projektbasierten Quellcodevergleich innerhalb von Entwicklungsumgebungen ======
  
 ---- dataentry StudentischeArbeit ---- ---- dataentry StudentischeArbeit ----
-Thema                     Design, Implementierung und Evaluation einer IDE-Integrierten Lösung zum konfliktfreien, einfachen und transparenten Wechsel zwischen Quellcodeversionen für Programmieranfänger #  +Thema                                  Entwicklung einer benutzerfreundlichen Lösung für den Datei- und Projektbasierten Quellcodevergleich innerhalb von Entwicklungsumgebungen 
-Art_thesistypes           : BA  +Art_thesistypes                        : BA 
-Betreuer_thesisadvisor    : Alexander Bazo  +BetreuerIn_thesisadvisor               : Alexander Bazo 
-Student                   : Niklas Woiton  +BearbeiterIn                           : Niklas Woiton 
-Professor_thesisprofessor  #  +ErstgutachterIn_thesisprofessor        Christian Wolff 
-Status_thesisstate        in Bearbeitung #  +ZweitgutachterIn_secondthesisprofessor : N.N. 
-Stichworte_thesiskeywords : Software Engineering, Programming Education, Assistance Systems  +Status_thesisstate                     abgeschlossen 
-angelegt_dt               : 2019-06-07  +Stichworte_thesiskeywords              : Software Engineering, Programming Education, Assistance Systems, Assistentssysteme für die Programmierausbildung 
-Beginn_dt                 : 2019-06-03 #  +angelegt_dt                            : 2019-06-07 
-Anmeldung_dt               #  +Beginn_dt                              : 2019-07-22 
-Antrittsvortrag_dt        : 2019-07-15  +Anmeldung_dt                           :  
-Abschlussvortrag_dt        #  +Antrittsvortrag_dt                     : 2019-07-15 
-Ende_dt                    # +Abschlussvortrag_dt                    :  
 +Abgabe_dt                              : 2019-09-24 
 +Textlizenz_textlicense                 : Unbekannt 
 +Codelizenz_codelicense                 Unbekannt
 ---- ----
  
  
-=== 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. 
  
 +
 +
 +
 +=== 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 === === 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 Prototypen 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.+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 festzustellenob die Anforderungen an das Artefakt erfüllt werden.
  
  
 === Konkrete Aufgaben === === Konkrete Aufgaben ===
  
-- Anforderungserhebung durch Rechereche von verwandten Arbeiten und den Bedürfnissen von Programmieranfängern+- Anforderungserhebung durch Recherche von verwandten Arbeiten und den Bedürfnissen von Programmieranfängern
 - Design und Implementierung eines prototypischen IDE-Plugins - Design und Implementierung eines prototypischen IDE-Plugins
-- Entwicklung eines Anwendungsfalles zur Evaluierung+- Entwicklung einer beispielhaften Anwendung zur Evaluierung
 - Evaluation des Prototypen in einer Laborstudie mit Teilnehmern aus der Zielgruppe - Evaluation des Prototypen in einer Laborstudie mit Teilnehmern aus der Zielgruppe