Metric Pictures: Source Code Images for Visualization, Analysis and Elaboration



Source code tracking, analysis and comprehension are difficult tasks because of the complex nature of software. Source code metrics evaluate some aspects of software artefacts and provide synthetic measures related to the examined characteristics. In this paper, we introduce an approach for obtaining raster images starting from source code metrics. With this method, the paper presents some images obtained from different releases of a software product and starts a preliminary discussion on how these images can be useful for underlining interesting features of analyzed code and for improving the software development process. Indeed IE best practices, when applied to source code metrics as proposed, may suggest a way to change or hybridize the classical point of view on code, providing both a way to visualize metric information and alternative approaches to operate on these data.


Source Code Tree Ring Software Development Process Software Metrics Software Artefact 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Balzer M., Deussen O. and Lewerentz C. (2005) Voronoi treemaps for the visualization of software metrics, Proceedings of the 2005 ACM symposium on Software visualization, session: Layout and graph drawing algorithms for software visualization table: 165–172.Google Scholar
  2. 2.
    Barlow T. and Neville P. (2001) A comparison of 2-d visualization of hierarchies, In Proceedings of the IEEE Symposium on Information Visualization 2001 (INFOVIS’01): 131–138.Google Scholar
  3. 3.
    Compton M. (2009) Visualization of Software Metrics.Google Scholar
  4. 4.
    Demeyer S., Ducasse S. and Lanza M. (1999) A hybrid reverse engineering platform combining metrics and program visualization, the 6th Working Conference on Reverse Engineering (WCRE ’99). IEEE Computer Society: 175–186.Google Scholar
  5. 5.
    DependencyFinder Tool, retrieved on June 2010 from:
  6. 6.
    Ducasse S., Gîrba T. and Kuhn A. (2006) Distribution map, In Proceedings of ICSM ’06, Los Alamitos CA: 203–212.Google Scholar
  7. 7.
    Ducasse S., Rieger M. and Demeyer S. (1999) A language independent approach for detecting duplicated code, In Hongji Yang and Lee White, editors, Proceedings of 15th IEEE International Conference on Software Maintenance (ICSM’99): 109–118.Google Scholar
  8. 8.
    Ducasse S., Denier S., Balmas F., Bergel A., Laval J., Mordal-Manet K., Bellingard F., (2009) Visualization of Practices and Metrics, Squale project, Workpackage: 1.2Google Scholar
  9. 9.
    Elmqvist N. and Fekete J.D. (2010) Hierarchical Aggregation for Information Visualization: Overview, Techniques and Design Guidelines, IEEE Transactions on Visualization and Computer Graphics. VOL16. NO.3: 439–454.Google Scholar
  10. 10.
    Guo Y. (2008) Implementation of 3D Kiviat Diagrams. Bachelor’s thesis, V¨axj¨o University, Sweden.Google Scholar
  11. 11.
    Ghanam Y., Carpendale S. (2008) A Survey Paper on Software Architecture Visualization, found at (
  12. 12.
    Gîrba T., Lanza M. And Ducasse S. (2005) Characterizing the evolution of class hierarchies, In Proceedings of 9th European Conference on Software Maintenance and Reengineering (CSMR’05), pp. 2–11, Los Alamitos CA: 1–10.Google Scholar
  13. 13.
    Ghoniem M., Fekete J.D. and Castagliola P. (2004) A comparison of the readability of graphs using node-link and matrix-based representations, In Proceedings of the 10th IEEE Symposium on Information Visualization (InfoVis’04), Austin: 17–24.Google Scholar
  14. 14.
    Gonzalez A., Theron R., Telea A., Garcia F.J. (2009) Combined visualization of structural and metric information for software evolution analysis, Foundations of Software Engineering, Proceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops 2009: 25–30.Google Scholar
  15. 15.
    Kuhn A., Ducasse S. and G^ırba T. (2007) Semantic Clustering: Identifying Topics in Source Code , Information and Software Technology Volume 49, Issue 3, March 2007: 230–243.Google Scholar
  16. 16.
    Kerren A. and Jusufi I. (2009) Novel Visual Representations for Software Metrics Using 3D and Animation - 4th HCIV workshop 2009, Germany: 147–154.Google Scholar
  17. 17.
    Andrews K. and Heidegger H. (1998) Information slices: Visualizing and exploring large hierarchies using cascading, semi-circular discs. In IEEE Information Visualization Symposium 1998 Late Breaking Hot Topics: 9–12.Google Scholar
  18. 18.
    Lanza M. (2001) The evolution matrix: Recovering software evolution using software visualization techniques, In Proceedings of IWPSE 2001: 37– 42.Google Scholar
  19. 19.
    Lanza M. and Ducasse S. (2003) Polymetric views - a lightweight visual approach to reverse engineering, Transactions on Software Engineering (TSE), 29(9):782–795.CrossRefGoogle Scholar
  20. 20.
    Langelier G., Sahraoui H. and Poulin P. (2005) Visualization based analysis of quality for large-scale software systems, In ASE ’05: Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, New York, NY, USA: 214–223.CrossRefGoogle Scholar
  21. 21.
    Marcus A., Feng L. and Maletic J.I. (2003) 3D representations for software visualization, In Proceedings of the ACM Symposium on Software Visualization: 27–36.Google Scholar
  22. 22.
    Martin M. (1994) OO Design Quality Metrics: An Analysis of Dependencies, Position Paper, Workshop on Pragmatic and Theoretical Directions in Object-Oriented Software Metrics, OOPSLA’94: 1–8.Google Scholar
  23. 23.
    Pinzger M., Gall H., Fischer M. and Lanza M. (2005) Visualizing multiple evolution metric, In Proceedings of SoftVis 2005, St. Louis, Missouri, USA: 67–75.Google Scholar
  24. 24.
    Rieger M. (2005) Effective Clone Detection Without Language Barriers. PhD thesis, University of Bern, June 2005.Google Scholar
  25. 25.
    Stasko J., Catrambone R., Guzdial M., Mcdonald K. (2000) An evaluation of space-filling information visualizations for depicting hierarchical structures, International Journal Human-Computer Studies, 53(5): 663–694.CrossRefGoogle Scholar
  26. 26.
    Sangal N., Jordan E., Sinha V. and Jackson D. (2005) Using dependency models to manage complex software architecture, In Proceedings of OOPSLA’05: 167–176.Google Scholar
  27. 27.
    Theron R. (2006) Hierarchical-temporal data visualization using a ring tree metaphor. Proc. Smart Graphics, Lecture Notes in Computer Science, 2006, Volume 4073/2006: 70–81Google Scholar
  28. 28.
    Wettel R. and Lanza M. (2007) Program comprehension through software habitability, In Proceedings of ICPC 2007: 231–240.Google Scholar
  29. 29.
    Wettel R. and Lanza M. (2007) Visualizing software systems as cities, In Proceedings of VISSOFT 2007: 92–99.Google Scholar
  30. 30.
    Wettel R. and Lanza M. (2008) Visual exploration of large-scale system evolution, In Proceedings of Softvis 2008: 155–164.CrossRefGoogle Scholar
  31. 31.
    Wettel R. and Lanza M. (2008) CodeCity: 3D visualization of large-scale software, International Conference on Software Engineering archive, Companion of the 30th international conference on Software Leipzig, Germany: 1–2.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  1. 1.Dipartimento di Matematica e InformaticaUniversity of SalernoSalernoItaly

Personalised recommendations