Interaktive Visualisierung von Software für räumlich verteilte Teams
Das TZI untersucht im Rahmen eines DFG-geförderten Projekts neue Verfahren zum besseren Verstehen komplexer Software.
Ein umfassender Überblick über den Aufbau und die Arbeitsweise einer Software ist für deren Wartung und Weiterentwicklung essenziell. Räumlich verteilt arbeitenden Teams fällt es jedoch oft schwer, ein gemeinsames Verständnis komplexer Projekte zu entwickeln. Das TZI der Universität Bremen untersucht daher in einem neuen Forschungsprojekt verschiedene Möglichkeiten, kollaborative Verstehensprozesse zu unterstützen. In dem zweijährigen Projekt, das von der Deutschen Forschungsgemeinschaft (DFG) gefördert wird, setzt die Arbeitsgruppe Softwaretechnik unter Leitung von Prof. Rainer Koschke auf neue Medien und Technologien der Softwarevisualisierung.
Beim kollaborativen Verstehen versuchen mehrere Beteiligte gemeinsam, sich ein Modell des Aufbaus und des Verhaltens eines Programms zu erarbeiten. „Dabei können sie wechselseitig von den unterschiedlichen Perspektiven und Expertisen anderer Gruppenmitglieder profitieren“, erklärt Koschke. „Meistens ist es hilfreich, ein gemeinsames Modell zu externalisieren – also für alle sichtbar und explizit zu machen, um die Gefahr von Missverständnissen und Fehlinterpretationen zu verringern.“
Häufig erstellen die Beteiligten in solchen Situationen spontane Skizzen auf dem Whiteboard, beispielsweise vom statischen Aufbau eines Programms. „Nicht selten werden die diskutierten Sachverhalte nur aus dem Gedächtnis der Beteiligten rekonstruiert, was in vielen Fällen eine ungenaue, manchmal sogar unzutreffende Idealisierung wiedergibt“, so Koschke. Helfen können automatisierte Programmanalysen, allerdings müssen deren Ergebnisse häufig erst zusammengefasst und abstrahiert werden, um verständlich zu sein.
Im aktuellen Projekt wollen die Wissenschaftler sowohl herkömmliche Desktop-Hardware und Tablet-Geräte als auch fortschrittlichere Hardware für virtuelle Realität (VR) und erweiterte Realität (AR, engl. „augmented reality“) so integrieren, dass Mitglieder eines Entwicklungsteams ein einheitliches und zutreffendes Bild ihrer Software über räumliche Distanzen hinweg bekommen. Die Visualisierung von Software für Gruppen statt einzelnen Betrachtern ist bis jetzt nur wenig erforscht.
Weitere Informationen gibt es hier.