Past, Present, and Future of and in Software Visualization

  • Stephan Diehl
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 550)


In a selective retrospective of the history of software visualization we discuss examples of applying visualization techniques to analyze the past and present state of software. Based on this retrospective, we make various suggestions for future research. In particular, we argue that the prediction of future aspects of a software system is an important task, but that software visualization research has only scratched the surface of it and that speculative visualization will be one of the major future challenges.


Software visualization Visualization Software engineering 


  1. 1.
    Andrews, K., Wolte, J., Pichler, M.: Information pyramids: a new approach to visualising large hierarchies. In: Proceedings of IEEE Visualization 1997 (1997)Google Scholar
  2. 2.
    Baecker, R.: Sorting Out Sorting. 30 minute color film (developed with assistance of Dave Sherman, distributed by Morgan Kaufmann, University of Toronto) (1981)Google Scholar
  3. 3.
    Balzer, M., Noack, A., Deussen, O., Lewerentz, C.: Software landscapes: visualizing the structure of large software systems. In: Proceedings of Joint EUROGRAPHICS - IEEE TCVG Symposium on Visualization, VisSym 2004, Konstanz, Germany, pp. 261–266 (2004)Google Scholar
  4. 4.
    Beck, F., Diehl, S.: On the impact of software evolution on software clustering. Empirical Softw. Eng. 18(5), 970–1004 (2013)CrossRefGoogle Scholar
  5. 5.
    Beck, F., Diehl, S.: Visual comparison of software architectures. Inf. Vis. 12(2), 178–199 (2013)CrossRefGoogle Scholar
  6. 6.
    Beyer, D.: Co-change visualization applied to PostgreSQL and ArgoUML: (MSR challenge report). In: Proceedings of the 2006 International Workshop on Mining Software Repositories, MSR, Shanghai, China, pp. 165–166 (2006)Google Scholar
  7. 7.
    Burch, M., Diehl, S., Weißgerber, P.: Visual data mining in software archives. In: Proceedings of ACM Symposium on Software Visualization (SOFTVIS05), St. Louis, MO. ACM Press, New York, NY, May 2005Google Scholar
  8. 8.
    Choudhury, A.N.M.I., Rosen, P.: Abstract visualization of runtime memory behavior. In: Proceedings of the 6th IEEE International Workshop on Visualizing Software for Understanding and Analysis, VISSOFT 2011, Williamsburg, VA, USA, pp. 1–8 (2011)Google Scholar
  9. 9.
    Cross, J.H., Hendrix, T.D., Maghsoodloo, S.: The control structure diagram: an overview and initial evaluation. Empirical Softw. Eng. 3, 131–158 (1998)CrossRefGoogle Scholar
  10. 10.
    D’Ambros, M., Lanza, M., Lungu, M.: Visualizing co-change information with the evolution radar. IEEE Trans. Softw. Eng. 35(5), 720–735 (2009)CrossRefGoogle Scholar
  11. 11.
    Diehl, S.: Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer, Heidelberg (2007)zbMATHGoogle Scholar
  12. 12.
    Eick, S.G., Steffen Jr, J.L., Sumner Jr, E.E.: Seesoft TM – a tool for visualizing line oriented software statistics. IEEE Trans. Softw. Eng. 18(11), 957–968 (1992)CrossRefGoogle Scholar
  13. 13.
    Hundhausen, C.D., Douglas, S.A., Stasko, J.T.: A meta-study of algorithm visualization effectiveness. J. Vis. Lang. Comput. 13(3), 259–290 (2002)CrossRefGoogle Scholar
  14. 14.
    Jackson, M.: Principles of Program Design. Academic Press, Waltham (1975)Google Scholar
  15. 15.
    Johannes, D., Seidel, R., Wilhelm, R.: Algorithm animation using shape analysis: visualising abstract executions. In: Proceedings of ACM Symposium on Software Visualization(SOFTVIS 2005), St. Louis, MI, pp. 17–26. ACM Press, New York, NY (2005)Google Scholar
  16. 16.
    Brooks Jr, F.P.: No silver bullet - essence and accidents of software engineering. IEEE Comput. 20(4), 10–19 (1987)CrossRefGoogle Scholar
  17. 17.
    Knowlton, K.: Bell Telephone Laboratories Low-Level Linked List Language. 16-min black and white film. Bell Telephone Laboratories, MurrayHill (1966)Google Scholar
  18. 18.
    Kuhn, A., Erni, D., Nierstrasz, O.: Embedding spatial software visualization in the IDE: an exploratory study. In: Proceedings of the ACM 2010 Symposium on Software Visualization, Salt Lake City, UT, USA, pp. 113–122 (2010)Google Scholar
  19. 19.
    Lange, C.F.J., Chaudron, M.R.V.: Interactive views to improve the comprehension of UML models - an experimental validation. In: Proceedings of 15th International Conference on Program Comprehension (ICPC 2007), Banff, Alberta, Canada, pp. 221–230 (2007)Google Scholar
  20. 20.
    Lutz, R., Schäfer, S., Diehl, S.: Are smartphones better than CRC cards? In: Symposium on Applied Computing, SAC 2014, Gyeongju, Republic of Korea, pp. 987–994. ACM (2014)Google Scholar
  21. 21.
    Maletic, J.I., Leigh, J., Marcus, A., Dunlap, G.: Visualizing object-oriented software in virtual reality. In: Proceedings of Ninth International Workshop on Program Comprehension(IWPC 2001), Toronto, Canada, pp. 49–54. IEEE Computer Society Press, Washington, DC(2001)Google Scholar
  22. 22.
    Nassi, I., Shneiderman, B.: Flowchart techniques for structured programming. SIGPLAN Not. 8(8), 12–26 (1973)CrossRefGoogle Scholar
  23. 23.
    Panas, T., Epperly, T., Quinlan, D.J., Sbjrnsen, A., Vuduc, R.W.: Communicating software architecture using a unified single-view visualization. In: Proceedings of 2th International Conference on Engineering of Complex Computer Systems (ICECCS 2007), Auckland, New Zealand, pp. 217–228 (2007)Google Scholar
  24. 24.
    Reitz, F., Pohl, M., Diehl, S.: Focused animation of dynamic compound graphs. In: 13th International Conference on Information Visualisation, IV 2009, Barcelona, Spain, pp. 679–684. IEEE Computer Society (2009)Google Scholar
  25. 25.
    Scott, A.E.: Automatic preparation of flow chart listings. J. ACM Int. Bus. Mach. Corporation 5(1), 57–66 (1958)MathSciNetzbMATHGoogle Scholar
  26. 26.
    Stasko, J.T., Domingue, J., Brown, M.H., Price, B.A.: Software Visualization - Programming as a Multimedia Experience. MIT Press, Cambridge (1998)Google Scholar
  27. 27.
    Steinbrückner, F., Lewerentz, C.: Understanding software evolution with software cities. Inf. Vis. 12(2), 200–216 (2013)CrossRefGoogle Scholar
  28. 28.
    Tufte, E.R.: Beautiful Evidence. Graphis Press, New York (2006)Google Scholar
  29. 29.
    Wettel, R., Lanza, M., Robbes, R.: Software systems as cities: a controlled experiment. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu, HI, USA, pp. 551–560 (2011)Google Scholar
  30. 30.
    Zimmermann, T., Diehl, S., Zeller, A.: How history justifies system architecture (or not). In: Proceedings of 6th International Workshop on Principles of Software Evolution (IWPSE 2003), Helsinki, Finland, pp. 73–83 (2003)Google Scholar
  31. 31.
    Zimmermann, T., Weißgerber, P., Diehl, S., Zeller, A.: Mining version histories to guide software changes. IEEE Trans. Softw. Eng. 31(6), 429–445 (2005)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Open Access This chapter is distributed under the terms of the Creative Commons Attribution Noncommercial License, which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.

Authors and Affiliations

  1. 1.Computer Science DepartmentUniversity of TrierTrierGermany

Personalised recommendations