Why do we care about software visualisations? What can pretty pictures tell us that code and logfiles can’t? The answer to these questions lies in scale. Software systems and their development projects have become so large that it has become near impossible to understand them at a high level without additional artefacts.
Of course, code and other artefacts from which the running system is created contain all the information, but they are so detailed that it’s impossible to see the larger structure, missing the forest for the trees. Documents and other artefacts that are created independently, architecture diagrams for example, usually are not detailed enough, often they represent an idealised view of the system, and nothing ensures they are up to date as the system changes.
For these reasons we believe that is has become necessary to create views at a medium level of abstraction, visualisations that aggregate large amounts of data and multiple metrics. And we believe that these views need to be created automatically from the artefacts that make up the running system.
Some visualisations are widely considered useful and have become so popular that they are available in standard tools. Dependency Structure Matrices are an example of such a view. Other visualisations provide answers and insights for less widespread questions, or are simply not yet popular. In such cases it’s often surprisingly easy to create a custom visualisations with just a few basic tools.
With this website we would like to present and make accessible a large number of different visualisations. We describe some standard views, we explain some less popular and more specialised views, and, in the context of some visualisations, we discuss their implementation using readily available technologies.
We hope you like what you see and that the visualisations prove helpful in your software development projects. Feel free to leave a comment on the site, or drop us a note at firstname.lastname@example.org.