Consistent Layout for Thematic Software Maps
This addresses the challenge of visualizing complex software systems for developers and analysts, though it is incremental as it builds on existing techniques like LSI and MDS.
The authors tackled the problem of inconsistent layouts in software visualizations by proposing a consistent layout where artifact position reflects vocabulary and distance corresponds to vocabulary similarity, using Latent Semantic Indexing and Multidimensional Scaling to enable easy comparison of different thematic software maps.
Software visualizations can provide a concise overview of a complex software system. Unfortunately, since software has no physical shape, there is no "natural" mapping of software to a two-dimensional space. As a consequence most visualizations tend to use a layout in which position and distance have no meaning, and consequently layout typical diverges from one visualization to another. We propose a consistent layout for software maps in which the position of a software artifact reflects its \emph{vocabulary}, and distance corresponds to similarity of vocabulary. We use Latent Semantic Indexing (LSI) to map software artifacts to a vector space, and then use Multidimensional Scaling (MDS) to map this vector space down to two dimensions. The resulting consistent layout allows us to develop a variety of thematic software maps that express very different aspects of software while making it easy to compare them. The approach is especially suitable for comparing views of evolving software, since the vocabulary of software artifacts tends to be stable over time.