You are here: SE » ThesisHome » ThesisDPPVII

Diplomarbeit

Behandlung von Nebenläufigkeitsaspekten in einem Werkzeug zur Verteilten Paarprogrammierung

In dieser Diplomarbeit wird gezeigt, welche Probleme im Zusammenhang mit Nebenläufigkeit in verteilter Paarprogrammierung auftreten und wie diese gelöst werden können. Zudem wird eine Lösung in einer bereits vorhandenen Eclipse-Erweiterung für verteilte Paarprogrammierung (Saros) implementiert.

Beschreibung

Zur technischen Unterstützung von Verteilter Paarprogrammierung wird an der Freien Universität Berlin von Studenten und wissenschaftlichen Mitarbeitern die Software Saros entwickelt, eine Erweiterung der Entwicklungsumgebung Eclipse.

Da man mit Saros im Mehrschreibermodus die Möglichkeit hat das klassische Driver-Observer-Muster der Paarprogrammierung aufzubrechen, und stattdessen mehrere Teilnehmer zumindest technisch zu Drivern zu machen, ergeben sich einige Nebenläufigkeitsprobleme. Dazu gehört das Problem, dass parallel erzeugte, nicht vertauschbare Operationen so bei allen Teilnehmern ausgeführt werden, dass danach ein konsistenter Zustand erhalten bleibt. Weitere Komplikationen können bei der parallelen Ausführung von langläufigen Operationen auftreten. Außerdem muss die Semantik der Undo-Funktion angepasst werden, da man in Zusammenarbeit mit anderen Personen meist nur die letzte eigene Änderung rückgängig machen möchte statt der global letzten Änderung.

Für das Nebenläufigkeitskontrollsystem zur Erhaltung eines konsistenten Zustandes wird die Jupiter-Architektur in Verbindung mit dem GOTO-Algorithmus verwendet. Zur Synchronisierung langläufiger Operationen wird ein Sperrmechanismus entwickelt, der Teilnehmer für eine bestimmte Zeit an der Erzeugung von Operationen hindert. Das Undo-Problem wird mit einer Aufzeichnung des Operationsverlaufs und dem GOTO-Algorithmus gelöst. Als schwierig erwies sich hierbei die Einbindung in Eclipse.

Um den Nutzen des Mehrschreibermodus, der in dieser Arbeit verbessert werden sollte, einschätzen zu können, wurde eine empirische Studie durchgeführt, die zum Ziel hatte, Unterschiede in der Benutzung zwischen dem Mehr- und dem Einzelschreibermodus auszumachen. Durch die geringe Teilnehmerzahl können jedoch keine quantitativ belegbaren Aussagen gemacht werden. Daher wird empfohlen die Studie in größerem Umfang und unter Einbeziehung der Erkenntnisse der vorliegenden Untersuchung zu wiederholen.

Durchführung

Die Diplomarbeit wurde durchgeführt von Sebastian Ziller. Sie wurde betreut von Christopher Oezbek und Stephan Salinger.

Materialien

  1. Wochenberichte
  2. Ausarbeitung
  3. Foliensatz Abschlussvortrag