Not logged in.

Contribution Details

Type Dissertation
Scope Discipline-based scholarship
Title Sensing software evolution: Software exploration with audio-tactile cognitive visualization
Organization Unit
Authors
  • Sandro Boccuzzo
Supervisors
  • Harald Gall
  • Michele Lanza
Language
  • English
Institution University of Zurich
Faculty Faculty of Economics, Business Administration and Information Technology
Number of Pages 194
Date 2012
Abstract Text An evolved software design is mostly intricate and not fully understood by an individual. To understand this abstract manner of software, research tried to simplify the understanding. One form of simplifying the understanding is to visualize software. Over the years, research in software visualization brought various solutions to address a software’s complexity. Some visualizations used hierarchies and showed the packages, classes and methods to get an understanding of a software’s structure. Others calculated metrics out of changes, hierarchies and relations of entities and present the software in a problem-oriented way. However, most software visualizations focus on improving the perception of a software system. We focus on improving the perception of software in our first step. Our general approach is to use objects known from our daily life such as the simple shape of a house to represent software components. The so-called glyphs are shaped based on the characteristics of the software components they represent. Because human observers know from their daily life how the glyph should look like, they recognize well-formed proportions of houses, e.g. roof versus body of the house. The perception can therefore be improved by visualizing the software according to an observer’s knowledge.Based on this general idea of improving perception of software when using an observer’s knowledge, we focus on further aspects. We present audio as a means to support a visualization in the same way we experience a movie more intense if supported with a sound track. In our work, we used an aural feedback to get a fast glimpse on other secondary characteristics of a visualized software component and researched how the use of audio feedback combined with sound technologies allow to guide an observer towards interesting aspects in a visualization.On top of this audio-visual approach, we looked for a simplification to access software visualization in general. With a focus on tasks engineers commonly use during their daily maintenance work, we implemented a framework to automate the configuration processes for a software visualization.We combined the approaches with tactile navigation on multitouch devices. This offered an observer access to explore a software with more natural behavior, similar as moving objects such as a glass or a paper around a table.?As a general research question, we stated the thesis: Visualizing evolving source code in a comprehensive understandable form provides insights to existing and emerging problems and supports finding relevant aspects with adequate tactile interaction and aural feedback.In the end, we opened the horizon to possibilities of improving multitouch navigation with simple spoken commands and looked at the opportunities that our approach offers for the collaboration among software engineers involved in the team. The main contribution of this dissertation is COCOVIZ, a methodology and tool to support an engineer in understanding an evolving software system with the help of an observers senses and his present knowledge. Multi-Touch screen technology combined with an audio supported 3D software visualization offers a promising way for the software engineers involved in a project to understand a software system and share knowledge about it in an intuitive manner. We validated our methodology with a survey addressing the different aspects of our approach. The main advantages of our methodology are found in particular in:1. Cognitive perception of virtual entities. With our approach we can match virtual entities to familiar natural objects. Compared to others with such a matching a perception of data is facilitated as the observer already is familiar with the used metaphors.2. Guided analysis of data. To analyze a software visualization beyond a certain level, with other approaches often a second visualization is created. When using audio on top of a visualization an observer can address the audio signal to support its visual impression and preserve its focus on the primer software visualization.3. Intuitive collaboration. Present visualizations are often not intuitive because controls within the visualization and the capabilities to share information limit an observers workflow. In a multi-touch environment we can arrange the access to adequate controls in an intuitive and natural way and leverage the multiuser capabilities of tactile devices together with information sharing approaches.
Zusammenfassung Eine Software Architektur entwickelt sich über die Zeit. Dabei verändert sich die Architektur oft so stark, dass es schwierig wird für den Einzelnen diese ganz zu verstehen. Um den abstrakten Sachverhalt von Software besser zu verstehen, versucht die Forschung das Verständnis zu vereinfachen. Eine Art, dieses Verständnis zu vereinfachen ist Software zu visualisieren. Über die Jahre haben Forscher verschiedene Lösungen für Software Visualisierungen präsentiert. Einige nutzen die Hierarchie und veranschaulichen die Softwarestruktur mit dem Zeigen von Paketen, Klassen und Methoden. Andere berechnen Metriken aus Veränderungen, Hierarchien und Relationen und präsentieren Software in einer problemorientierten Weise. Am Ende versuchen aber alle Software Visualisierungen darauf, die Wahrnehmung des aktuellen Softwaresystems zu verbessern. Im ersten Teil der Arbeit befassen wir uns mit der verbesserten Wahrnehmung von Software Systemen. Unser grundlegender Ansatz ist, Gegenstände aus unserem täglichen Leben, wie die Formen eines einfachen Hauses zu verwenden und mit ihnen Softwarekomponenten darzustellen. Diese Objekte werden gemäss den Charakteristiken der gezeigten Softwarekomponenten geformt. Weil ein Betrachter die Gegenstände aus dem täglichen Leben kennt und weiss wie Sie aussehen sollten, erkennt er Unterschiede wie ein kleines Dach verglichen zum Basiskörper sehr schnell. Die Wahrnehmung wird darin verbessert, dass Software unter der Verwendung des Grundwissens des Betrachters visualisiert wird. Basierend auf der grundlegenden Idee die Wahrnehmung von Software durch die Verwendung vom Grundwissen des Betrachters zu verbessern, haben wir andere verwandte Aspekte betrachtet. Wir verwenden Audio als eine Form Softwarevisualisierung zu unterstützen, in ähnlicher Weise wie eine Tonspur die Wahrnehmung eines Films unterstützt. In unserer Arbeit ermöglicht Audio einen schnellen Einblick über sekundäre Charakteren der visualisierten Softwarekomponente. Wir forschten des weiteren in wiefern eine Audio Rückmeldung kombiniert mit Surround-Sound Technologie dazu verwendet werden kann, einen Betrachter zu interessanten Aspekten in der Software Visualisierung zu führen. Aufbauend auf dem audio-visuellen Ansatz befassten wir uns damit, wie der Einstieg in die Verwendung von Softwarevisualisierung vereinfacht werden kann. Wir fokussierten dabei auf übliche Arbeitsschritte, welche Softwareentwickler während ihrer täglichen Arbeit verwenden. Darauf aufbauend erstellten wir ein System, welches das Automatisieren der Konfigurationsprozesse für eine Software Visualisierung weitgehend automatisiert. Wir kombinierten unsere Ansätze mit einer taktilen Navigation auf Multitouchgeräten. Dies erlaubt es dem Betrachter ein visualisiertes Softwareprojekt mit einer natürlichen Handhabung zu erforschen, fast so wie das verschieben eines Glases oder eines Papiers auf einem Tisch. Wir erweiterten unseren Horizont dahin, dass wir mit einfachen verbalen Befehlen diese taktile Navigation in gewissen Situationen verbessern konnten. Am Schluss der Arbeit betrachteten wir die Möglichkeiten, welche unsere Ansätze für die Förderung der Zusammenarbeit zwischen beteiligten Softwareentwicklern anbieten. Als Hauptbeitrag dieser Dissertation präsentieren wir COCOVIZ, eine Methodik zur Verständnisunterstützung eines wandelnden Software Systems. Multi-Touch Technologien kombiniert mit audio-unterstützter 3D Software Visualisation ermöglicht es Softwareentwicklern ein Software Projekt zu verstehen und Informationen und Wissen über dieses System intuitiv unter den Beteiligten auszutauschen. Wir überprüfen unseren Ansatz mit einer Umfrage, welche die verschiedenen Teilaspekte unseres Ansatzes in Betracht zieht. Die Hauptvorteile unseres Ansatzes finden sich im speziellen in: 1. Kognitiven Wahrnehmung von virtuellen Komponenten. Mit unserem Ansatz können wir virtuelle Komponenten mit uns vertrauten natürlichen Objekten verknüpfen. Im Vergleich zu anderen Ansätzen wird die Wahrnehmung von Daten dadurch vereinfacht, da dem Beobachter die verwendeten Metaphern bereits vertraut sind. 2. Unterstützte Analyse von Daten. Um Software über einen bestimmten Punkt hinweg analysieren zu können, wird in bestehenden Ansätzen oft das Erstellen von mehreren verschiedenen Visualisierungen unabdingbar. In dem wir eine Visualisierung zusätzlich mit Audio ergänzen, können wir einen Betrachter in seiner visuellen Wahrnehmung unterstützen. Dadurch können wir auch verhindern, dass dieser seinen Hauptfokus in der Software Visualisierung verliert. 3. Intuitive Kollaboration. Bestehende Visualisierungen sind oft nicht intuitiv genug, weil deren Bedienelemente und die Fähigkeiten die Informationen zu teilen den Betrachter limitieren. In einer Multi-touch Umgebung können wir den Zugriff auf geeignete Bedienelemente in einer intuitiven Form ermöglichen. Zusätzlich können wir die Kollaborationsmöglichkeiten solcher Umgebungen mit Fähigkeiten die Informationen mit anderen Mitarbeitern zu teilen verknüpfen.
Other Identification Number merlin-id:6909
Export BibTeX
EP3 XML (ZORA)