Nane Kratzke

Thesis:

Ein P2P-basierter Echtzeit-Online-Editor für Code-Reviews und Pair-Programming

Published: 06 Feb 2018 (latest update: 28 Nov 2018)
Type: Master (M. Sc.)
State: completed
Study: Medieninformatik online
Language: Deutsch
Author: Melanie Lucht
Company: cocoo.io UG & Co. KG

Gegenstand dieser Masterarbeit ist ein Browser-basiertes Code-Review Tool, dass es ermöglicht Unterstützung von einem entfernten Teammitglied anzufordern, insbesondere um einen fachlichen Austausch zu Quellcode zu ermöglichen. Zur Vermeidung eines aufwändigen Backend-Server-Systems soll die Kommunikation zwischen den Browsern mittels einer Peer-to-Peer-basierten WebRTC-Verbindung erfolgen.

Die Applikation soll insbesondere folgendes Szenario abdecken: Ein Initiator möchte einen fachlichen Austausch zu einem Quellcode anstoßen, indem er ein Teammitglied mittels einer Zufalls-URL zu einer Online-Session einlädt. Über diese URL kann ein anderer Entwickler Änderungen am gemeinsam editierten Quellcode vornehmen und zur Verfügung stellen. Solche Änderungen werden geeignet markiert. Der Initiator soll diese Änderungen übernehmen können.

Die Lösung soll eine Kombination aus Pair-Programming und Code-Review unterstützen.

Teilaufgaben:

  • Analyse bestehender Lösungsansätze
  • Analyse der WebRTC Technologien und verfügbare APIs
  • Architekturentwurf der Anwendung
  • Prototypische Implementierung des Editors (gem. Prioritäten)
  • Prototypische Implementierung des Connection Servers
  • Die Funktionsfähigkeit von Editor und Connection Server soll mittels Softwaretests geeignet nachgewiesen werden.
  • Die Nutzbarkeit soll systematisch evaluiert werden. Hierbei ist ein Entwicklerteam geeignet einzubeziehen.
  • Dokumentation der oben angegeben Schritte (Master-Arbeit) inkl. Bewertung der Nutzbarkeit und technischen Eignung für oben angegebenen Einsatzzweck.

Es wird empfohlen die Dokumentation von Anfang an begleitend zur Arbeit zu erstellen und sich an einem Dokumentations-Template - wie bspw. diesem - zu orientieren.

Downloads