Header

UZH-Logo

Maintenance Infos

Evo-Clocks: Software Evolution at a Glance


Alexandru, Carol V; Proksch, Sebastian; Behnamghader, Pooyan; Gall, Harald (2019). Evo-Clocks: Software Evolution at a Glance. In: 7th IEEE Working Conference on Software Visualization, Cleveland, 30 September 2019 - 1 October 2019.

Abstract

Understanding the evolution of a project is crucial in reverse-engineering, auditing and otherwise understanding existing software. Visualizing how software evolves can be challenging, as it typically abstracts a multi-dimensional graph structure where individual components undergo frequent but localized changes. Existing approaches typically consider either only a small number of revisions or they focus on one particular aspect, such as the evolution of code metrics or architecture. Approaches using a static view with a time axis (such as line charts) are limited in their expressiveness regarding structure, and approaches visualizing structure quickly become cluttered with an increasing number of revisions and components. We propose a novel trade-off between displaying global structure over a large time period with reduced accuracy and visualizing fine-grained changes of individual components with absolute accuracy. We demonstrate how our approach displays changes by blending redundant visual features (such as scales or repeating data points) where they are not expressive. We show how using this approach to explore software evolution can reveal ephemeral information when familiarizing oneself with a new project. We provide a working implementation as an extension to our open-source library for fine-grained evolution analysis, LISA.

Abstract

Understanding the evolution of a project is crucial in reverse-engineering, auditing and otherwise understanding existing software. Visualizing how software evolves can be challenging, as it typically abstracts a multi-dimensional graph structure where individual components undergo frequent but localized changes. Existing approaches typically consider either only a small number of revisions or they focus on one particular aspect, such as the evolution of code metrics or architecture. Approaches using a static view with a time axis (such as line charts) are limited in their expressiveness regarding structure, and approaches visualizing structure quickly become cluttered with an increasing number of revisions and components. We propose a novel trade-off between displaying global structure over a large time period with reduced accuracy and visualizing fine-grained changes of individual components with absolute accuracy. We demonstrate how our approach displays changes by blending redundant visual features (such as scales or repeating data points) where they are not expressive. We show how using this approach to explore software evolution can reveal ephemeral information when familiarizing oneself with a new project. We provide a working implementation as an extension to our open-source library for fine-grained evolution analysis, LISA.

Statistics

Citations

Altmetrics

Downloads

104 downloads since deposited on 19 Sep 2019
104 downloads since 12 months
Detailed statistics

Additional indexing

Item Type:Conference or Workshop Item (Paper), refereed, original work
Communities & Collections:03 Faculty of Economics > Department of Informatics
Dewey Decimal Classification:000 Computer science, knowledge & systems
Language:English
Event End Date:1 October 2019
Deposited On:19 Sep 2019 12:04
Last Modified:29 Mar 2020 05:52
Publisher:IEEE
OA Status:Green
Publisher DOI:https://doi.org/10.1109/VISSOFT.2019.00010
Other Identification Number:merlin-id:18020

Download

Green Open Access

Download PDF  'Evo-Clocks: Software Evolution at a Glance'.
Preview
Content: Published Version
Filetype: PDF
Size: 3MB
View at publisher