Article ID Journal Published Year Pages File Type
550709 Information and Software Technology 2012 13 Pages PDF
Abstract

ContextFrequent changes to groups of software entities belonging to different parts of the system may indicate unwanted couplings between those parts. Visualizations of co-changing software entities have been proposed to help developers identify unwanted couplings. Identifying unwanted couplings, however, is only the first step towards an important goal of a software architect: to improve the decomposition of the software system. An in-depth analysis of co-changing entities is needed to understand the underlying reasons for co-changes, and also determine how to resolve the issues.ObjectiveIn this paper we discuss how interactive visualizations can support the process of analyzing the identified unwanted couplings.MethodWe applied a tool that interactively visualizes software evolution in 10 working sessions with architects and developers of a large embedded software system having a development history of more than a decade.ResultsThe participants of the working sessions were overall very positive about their experiences with the interactive visualizations. In 70% of the cases investigated, a decision could be taken on how to resolve the unwanted couplings.ConclusionOur experience suggests that interactive visualization not only helps to identify unwanted couplings but it also helps experts to reason about and resolve them.

Graphical abstractFigure optionsDownload full-size imageDownload as PowerPoint slideHighlights► We illustrate how interactive visualizations of co-changed software entities can be used beyond the identification of unwanted couplings, to reason about and resolve unwanted couplings. ► We present a range of possible interactions to do so. ► We present a case study illustrating the use of interactive visualizations in a large scale software system.

Related Topics
Physical Sciences and Engineering Computer Science Human-Computer Interaction
Authors
, , ,