A File Based Visualization of Software Evolution

Software Configuration Management systems are important instruments for supporting development of large software projects. They accumulate large amounts of evolution data that can be used for process accounting and auditing. We study how visualization can help developers and managers to get insight in this unstructured history information. To this end, we propose several new techniques for visual mining of software evolution. Central to our approach is a file-based evolution visualization, where each project is shown as a set of horizontal stripes depicting files along the time axis. We propose several mechanisms for interactively building layouts in this display, and for correlating the evolution with the results of various software metrics. We demonstrate the usefulness of our approach on real-life data sets.

[1]  Michele Lanza,et al.  The evolution matrix: recovering software evolution using software visualization techniques , 2001, IWPSE '01.

[2]  Richard C. Holt,et al.  Evolution Spectrographs: visualizing punctuated change in software evolution , 2004 .

[3]  G. Lommerse,et al.  The visual code navigator: an interactive toolset for source code investigation , 2005, IEEE Symposium on Information Visualization, 2005. INFOVIS 2005..

[4]  Stephen G. Eick,et al.  Seesoft-A Tool For Visualizing Line Oriented Software Statistics , 1992, IEEE Trans. Software Eng..

[5]  Richard C. Holt,et al.  Evolution Spectrographs: visualizing punctuated change in software evolution , 2004, Proceedings. 7th International Workshop on Principles of Software Evolution, 2004..

[6]  Thomas Zimmermann,et al.  Preprocessing CVS Data for Fine-Grained Analysis , 2004, MSR.

[7]  Harald C. Gall,et al.  CVS release history data for detecting logical couplings , 2003, Sixth International Workshop on Principles of Software Evolution, 2003. Proceedings..

[8]  Andreas Zeller,et al.  Mining Version Histories to Guide Software Changes , 2004 .

[9]  J. Herbsleb,et al.  Two case studies of open source software development: Apache and Mozilla , 2002, TSEM.

[10]  Lucian Voinea,et al.  CVSscan: visualization of code evolution , 2005, SoftVis '05.

[11]  Jarke J. van Wijk,et al.  Cushion Treemaps: Visualization of Hierarchical Information , 1999, INFOVIS.

[12]  P. Sopp Cluster analysis. , 1996, Veterinary immunology and immunopathology.

[13]  Brian Everitt,et al.  Cluster analysis , 1974 .

[14]  Paul A. Gore,et al.  11 – Cluster Analysis , 2000 .

[15]  Harald C. Gall,et al.  Populating a Release History Database from version control and bug tracking systems , 2003, International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings..