Header

UZH-Logo

Maintenance Infos

Sensing software evolution: Software exploration with audio-tactile cognitive visualization


Boccuzzo, Sandro. Sensing software evolution: Software exploration with audio-tactile cognitive visualization. 2012, University of Zurich, Faculty of Economics.

Abstract

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.

Abstract

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.

Statistics

Additional indexing

Item Type:Dissertation (monographical)
Referees:Gall Harald, Lanza Michele
Communities & Collections:03 Faculty of Economics > Department of Informatics
UZH Dissertations
Dewey Decimal Classification:000 Computer science, knowledge & systems
Language:English
Date:1 January 2012
Deposited On:19 Apr 2012 08:19
Last Modified:25 Aug 2020 14:09
Number of Pages:194
OA Status:Closed
Other Identification Number:merlin-id:6909
Full text not available from this repository.