Interactive Visualization of Software

  • Markus Scheidgen
  • Nils Goldammer
  • Joachim Fischer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10567)

Abstract

To understand more and more complex software systems and the rules that govern their development, software visualization uses more and more complex, but static visual representations (charts) to allow computer scientists to analyze complex multi-modal, multi-variant, and potentially temporal data gathered from software artifacts. Data scientist however, use interactive visual analysis to not only visualize data but to explore and understand data via interactive visualizations.

In this paper, we present a language that allows us to quickly create such interactive visualizations for software. We present a process to measure software and gather data, a common data meta-model, four principal ways to combine individual charts into an interactive visualization, the language constructs needed to specify interactive visualizations, and a working implementation and examples for this language.

References

  1. 1.
    Vega: A visualization grammar, November 2016. https://vega.github.io/vega/
  2. 2.
    Ball, T., Eick, S.G.: Softw. Vis. Large. East 29(4), 33–43 (1996)Google Scholar
  3. 3.
    Berthold, M.R., et al.: KNIME: the Konstanz information miner. In: Preisach, C., Burkhardt, H., Schmidt-Thieme, L., Decker, R. (eds.) Data Analysis, Machine Learning and Applications. Studies in Classification, Data Analysis, and Knowledge Organization, pp. 319–326. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-78246-9_38 CrossRefGoogle Scholar
  4. 4.
    Bostock, M., Ogievetsky, V., Heer, J.: D3 data-driven documents. IEEE Trans. Visual Comput. Graphics 17(12), 2301–2309 (2011). http://dx.doi.org/10.1109/TVCG.2011.185 CrossRefGoogle Scholar
  5. 5.
    Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: Modisco: a generic and extensible framework for model driven reverse engineering. In: Proceedings of the IEEE/ACM International Conference on Automated Software Engineering, pp. 173–174. ASE 2010, NY (2010). http://doi.acm.org/10.1145/1858996.1859032
  6. 6.
    Dal Sasso, T., Minelli, R., Mocci, A., Lanza, M.: Blended, not stirred: multi-concern visualization of large software systems. In: 2015 IEEE 3rd Working Conference on Software Visualization (VISSOFT), pp. 106–115. IEEE (2015)Google Scholar
  7. 7.
    Fittkau, F., Krause, A., Hasselbring, W.: Exploring software cities in virtual reality. In: 2015 IEEE 3rd Working Conference on Software Visualization (VISSOFT), pp. 130–134. IEEE (2015)Google Scholar
  8. 8.
    Gall, H., Jazayeri, M., Riva, C.: Visualizing software release histories: the use of color and third dimension. In: Proceedings IEEE International Conference on Software Maintenance 1999 (ICSM 1999). ‘Software Maintenance for Business Change’ (Cat. No. 99CB36360) (1999)Google Scholar
  9. 9.
    Gannod, G.C., Cheng, B.H.: A framework for classifying and comparing software reverse engineering and design recovery techniques. In: 1999 Proceedings of the Sixth Working Conference on Reverse Engineering, pp. 77–88. IEEE (1999)Google Scholar
  10. 10.
    Garmendia, A., Jim, A., Lara, J.D.: Scalable model exploration through abstraction and fragmentation strategies. In: BigMDE 2015 Workshop at STAF 2015 (2015)Google Scholar
  11. 11.
    Gračanin, D., Matković, K., Eltoweissy, M.: Software visualization. Innovations Syst. Softw. Eng. 1(2), 221–230 (2005)CrossRefGoogle Scholar
  12. 12.
    Holten, D., Vliegen, R., Van Wijk, J.J.: Visual realism for the visualization of software metrics. In: Proceedings of VISSOFT 2005: 3rd IEEE International Workshop on Visualizing Software for Understanding and Analysis, pp. 27–32 (2005)Google Scholar
  13. 13.
    Kagdi, H., Collard, M.L., Maletic, J.I.: Towards a taxonomy of approaches for mining of source code repositories. In: ACM SIGSOFT Software Engineering Notes, vol. 30, pp. 1–5. ACM (2005)Google Scholar
  14. 14.
    Keim, D., Andrienko, G., Fekete, J.-D., Görg, C., Kohlhammer, J., Melançon, G.: Visual analytics: definition, process, and challenges. In: Kerren, A., Stasko, J.T., Fekete, J.-D., North, C. (eds.) Information Visualization. LNCS, vol. 4950, pp. 154–175. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-70956-5_7 CrossRefGoogle Scholar
  15. 15.
    Khan, T., Barthel, H., Ebert, A., Liggesmeyer, P.: Visual analytics of software structure and metrics. In: 2015 IEEE 3rd Working Conference on Software Visualization (VISSOFT), pp. 16–25, September 2015Google Scholar
  16. 16.
    Kuhn, A., Loretan, P., Nierstrasz, O.: Consistent layout for thematic software maps. In: Proceedings of Working Conference on Reverse Engineering, WCRE, pp. 209–218 (2008)Google Scholar
  17. 17.
    Lanza, M., Ducasse, S.: Polymetric views - a lightweight visual approach to reverse engineering. IEEE Trans. Software Eng. 29(9), 782–795 (2003)CrossRefGoogle Scholar
  18. 18.
    Lex, A., Streit, M., Schulz, H.J., Partl, C., Schmalstieg, D.: StratomeX: visual analysis of large-scale heterogeneous genomics data for cancer subtype characterization. Comput. Graph. Forum 31(3pt3), 1175–1184 (2012). http://doi.wiley.com/10.1111/j.1467-8659.2012.03110.x CrossRefGoogle Scholar
  19. 19.
    Munzner, T.: Visualization Analysis and Design. CRC Press, Boca Raton (2014)Google Scholar
  20. 20.
    Oeltze, S., Doleisch, H., Hauser, H., Weber, G.: Interactive visual analysis of scientific data. Tutorial at the IEEE VisWeek, October 2012. http://www.vismd.de/lib/exe/fetch.php?media=teaching_tutorials: ieeevisweektutorial_2012_iva_proposal.pdf
  21. 21.
    Ostendorp, M.C., Jelschen, J., Winter, A.: Elviz: a query-based approach to model visualization. In: Modellierung, pp. 105–120 (2014)Google Scholar
  22. 22.
    Partl, C., Lex, A., Streit, M., Strobelt, H., Wassermann, A., Pfister, H., Schmalstieg, D.: ConTour: data-driven exploration of multi-relational datasets for drug discovery. IEEE Trans. Vis. Comput. Graph. 20(12), 1883–1892 (2014)CrossRefGoogle Scholar
  23. 23.
    Partl, C., Kalkofen, D., Lex, A., Kashofer, K., Streit, M., Schmalstieg, D.: EnRoute: dynamic path extraction from biological pathway maps for in-depth experimental data analysis. In: Proceedings of IEEE Symposium on Biological Data Visualization 2012, BioVis 2012, pp. 107–114 (2012)Google Scholar
  24. 24.
    Pérez-Castillo, R., De Guzman, I.G.R., Piattini, M.: Knowledge discovery metamodel-iso/iec 19506: a standard to modernize legacy systems. Comput. Stand. Interfaces 33(6), 519–532 (2011)CrossRefGoogle Scholar
  25. 25.
    Satyanarayan, A., Moritz, D., Wongsuphasawat, K., Heer, J.: Vega-lite: a grammar of interactive graphics. IEEE Trans. Vis. Comp. Graph.(Proc. InfoVis) 23(1), 341–350 (2017). http://idl.cs.washington.edu/papers/vega-lite CrossRefGoogle Scholar
  26. 26.
    Satyanarayan, A., Wongsuphasawat, K., Heer, J.: Declarative interaction design for data visualization. In: ACM User Interface Software & Technology (UIST) (2014). http://idl.cs.washington.edu/papers/reactive-vega
  27. 27.
    Scheidgen, M., Fischer, J.: Model-based mining of source code repositories. In: Amyot, D., Fonseca i Casas, P., Mussbacher, G. (eds.) SAM 2014. LNCS, vol. 8769, pp. 239–254. Springer, Cham (2014). doi: 10.1007/978-3-319-11743-0_17 Google Scholar
  28. 28.
    Scheidgen, M., Goldammer, N.: D3ng: D3 and angular2 based interactive visualizations of complex data (2017). http://github.com/markus1978/d3ng
  29. 29.
    Scheidgen, M., Schmidt, M., Fischer, J.: Creating and analyzing source code repository models - a model-based approach to mining software repositories. In: Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development MODELSWARD, vol. 1, pp. 329–336 (2017)Google Scholar
  30. 30.
    Streit, M., Schulz, H.J., Lex, A., Schmalstieg, D., Schumann, H.: Model-driven design for the visual analysis of heterogeneous data. IEEE trans. vis. comput. graph. 18(6), 998–1010 (2012). http://www.ncbi.nlm.nih.gov/pubmed/21690642 CrossRefGoogle Scholar
  31. 31.
    Sugimoto, A.: Vega: a visual modeling language for digital systems. IEEE Des. Test Comput. 3(3), 38–45 (1986)CrossRefGoogle Scholar
  32. 32.
    Würfel, H., Trapp, M., Limberger, D., Döllner, J.: Natural phenomena as metaphors for visualization of trend data in interactive software maps. In: CGVC, pp. 69–76 (2015)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Markus Scheidgen
    • 1
  • Nils Goldammer
    • 1
  • Joachim Fischer
    • 1
  1. 1.Department of Computer ScienceHumboldt Universität zu BerlinBerlinGermany

Personalised recommendations