skip to main content
10.1145/1148493.1148501acmconferencesArticle/Chapter ViewAbstractPublication PagessoftvisConference Proceedingsconference-collections
Article

Visualizing live software systems in 3D

Published: 04 September 2006 Publication History

Abstract

The analysis of the runtime behavior of a software system yields vast amounts of information, making accurate interpretations difficult. Filtering or compression techniques are often applied to reduce the volume of data without loss of key information vital for a specific analysis goal. Alternatively, visualization is generally accepted as a means of effectively representing large amounts of data. The challenge lies in creating effective and expressive visual representations that not only allows for a global picture, but also enables us to inspect the details of the large data sets. We define the focus of our analysis to be the runtime behavior of features. Static structural visualizations of a system are typically represented in two dimensions. We exploit a third dimension to visually represent the dynamic information, namely object instantiations and message sends. We introduce a novel 3D visualization technique that supports animation of feature behavior and integrates zooming, panning, rotating and on-demand details. As proof of concept, we apply our visualization technique to feature execution traces of an example system.

References

[1]
Chikofsky, E. J., and II, J. H. C. 1990. Reverse engineering and design recovery: A taxonomy. IEEE Software (Jan.), 13--17.
[2]
De Pauw, W., Helm, R., Kimelman, D., and Vlissides, J. 1993. Visualizing the behavior of object-oriented systems. In Proceedings OOPSLA '93, 326--337.
[3]
Ducasse, S., Lanza, M., and Bertuli, R. 2004. High-level polymetric views of condensed run-time information. In Proceedings of CSMR 2004 (Conference on Software Maintenance and Reengineering), 309--318.
[4]
Ducasse, S., Gîrba, T., Lanza, M., and Demeyer, S. 2005. Moose: a collaborative and extensible reengineering environment. In Tools for Software Maintenance and Reengineering, RCOST/Software Technology Series. Franco Angeli, Milano, 55--71.
[5]
Ducasse, S., Renggli, L., and Wuyts, R. 2005. SmallWiki --- a meta-described collaborative content management system. In International Symposium on Wikis (WikiSym'05), ACM Computer Society, New York, NY, USA, 75--82.
[6]
Eisenbarth, T., Koschke, R., and Simon, D. 2003. Locating Features in Source Code. IEEE Computer 29, 3 (Mar.), 210--224.
[7]
Ernst, E. 2003. Higher-order hierarchies. In Proceedins of the European Conference on Object-Oriented Programming, Springer Verlag, Darmstadt, Germany, LNCS.
[8]
Fowler, M. 2003. UML Distilled. Addison Wesley.
[9]
Greevy, O., and Ducasse, S. 2005. Correlating features and code using a compact two-sided trace analysis approach. In Proceedings of CSMR 2005 (9th European Conference on Software Maintenance and Reengineering, IEEE Computer Society Press, 314--323.
[10]
Greevy, O., Ducasse, S., and Gîrba, T. 2005. Analyzing feature traces to incorporate the semantics of change in software evolution analysis. In Proceedings of ICSM 2005 (21th International Conference on Software Maintenance), IEEE Computer Society Press, 347--356.
[11]
Greevy, O., Lanza, M., and Wysseier, C. 2005. Visualizing feature interaction in 3-d. In Proceedings of Vissoft 2005 (3th IEEE International Workshop on Visualizing Software for Understanding).
[12]
Hamou-Lhadj, A., Braun, E., Amyot, D., and Leth-Bridge, T. 2005. Recovering behavioral design models from execution traces. In Proceedings of CSMR 2005 (9th European Conference on Software Maintenance and Reengineering).
[13]
Jerding, D. J., Stasko, J. T., and Ball, T. 1997. Visualizing interactions in program executions. In Proceedings of ICSE '97, 360--370.
[14]
Kleyn, M. F., and Gingrich, P. C. 1988. GraphTrace --- understanding object-oriented systems using concurrently animated views. In Proceedings OOPSLA '88 (International Conference on Object-Oriented Programming Systems, Languages, and Applications, ACM Press, vol. 23, 191--205.
[15]
Lange, D. B., and Nakamura, Y. 1995. Interactive Visualization of Design Patterns can help in Framework Understanding. In Proceedings of OOPSLA '95 (International Conference on Object-Oriented Programming Systems, Languages and Applications), ACM Press, 342--357.
[16]
Lange, D., and Nakamura, Y. 1995. Object-oriented program tracing and visualization. Research Report RT0111, IBM Research, Tokyo Research Laboratory.
[17]
Lanza, M., and Ducasse, S. 2003. Polymetric views---a lightweight visual approach to reverse engineering. IEEE Transactions on Software Engineering 29, 9 (Sept.), 782--795.
[18]
Lanza, M. 2003. Codecrawler --- lessons learned in building a software visualization tool. In Proceedings of CSMR 2003, IEEE Press, 409--418.
[19]
Maletic, J. I., Marcus, A., and Collard, M. 2002. A task oriented view of software visualization. In Proceedings of the 1st Workshop on Visualizing Software for Understanding and Analysis (VISSOFT 2002), IEEE, 32--40.
[20]
Marcus, A., Feng, L., and Maletic, J. I. 2003. 3d representations for software visualization. In Proceedings of the ACM Symposium on Software Visualization, IEEE, 27--ff.
[21]
Nierstrasz, O., Ducasse, S., and Gîrba, T. 2005. The story of Moose: an agile reengineering environment. In Proceedings of the European Software Engineering Conference (ESEC/FSE 2005), ACM Press, New York NY, 1--10. Invited paper.
[22]
Reiss, S. P. 2003. Visualizing Java in action. In Proceedings of SoftVis 2003 (ACM Symposium on Software Visualization), 57--66.
[23]
Sharp, R., and Rountev, A. 2005. Interactive exploration of uml sequence diagrams. In Proceedings of VISSOFT 2005 (3rd IEEE Workshop on Visualizing Software for Understanding and Analysis, IEEE CS Press, 8--13.
[24]
Stasko, J. T., Domingue, J., Brown, M. H., and Price, B. A., Eds. 1998. Software Visualization --- Programming as a Multimedia Experience. The MIT Press.
[25]
Storey, M.-A. D., and Müller, H. A. 1995. Manipulating and Documenting Software Structures using SHriMP Views. In Proceedings of ICSM '95 (International Conference on Software Maintenance), IEEE Computer Society Press, 275--284.
[26]
Storey, M.-A. D., Fracchia, F. D., and Müller, H. A. 1999. Cognitive Design Elements to Support the Construction of a Mental Model during Software Exploration. Journal of Software Systems 44, 171--185.
[27]
Stroulia, E., and Systa, T. 2002. Dynamic analysis for reverse engineering and program understanding. SIGAPP. Appl. Comput. Rev. 10, 1, 8--17.
[28]
Vion-Dury, J.-Y., and Santana, M. 1994. Virtual images: Interactive visualization of distributed object-oriented systems. In Proceedings of OOPSLA 1994, A. Press, Ed., 65--84.
[29]
Walker, R. J., Murphy, G. C., Freeman-Benson, B., Wright, D., Swanson, D., and Isaak, J. 1998. Visualizing dynamic software system information through high-level models. In Proceedings OOPSLA '98, ACM, 271--283.
[30]
Wilde, N., and Scully, M. C. 1995. Software reconnaisance: Mapping program features to code. Software Maintenance: Research and Practice 7, 1, 49--62.
[31]
Wysseier, C. 2004. CCJun -- polymetric views in three-dimensional space. Informatikprojekt, University of Berne, June.
[32]
Wysseier, C. 2005. Interactive 3-D Visualization of Feature-Traces. MSc. thesis, University of Berne, Switzerland.

Cited By

View all
  • (2024)Immersive Software Archaeology: Exploring Software Architecture and Design in Virtual Reality2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER60148.2024.00011(47-51)Online publication date: 12-Mar-2024
  • (2018)2.5D Extension of ChronoView for Exploring Periodic Features of Temporal Data2018 22nd International Conference Information Visualisation (IV)10.1109/iV.2018.00014(19-25)Online publication date: Jul-2018
  • (2018)A framework for the recovery and visualization of system availability scenarios from execution tracesInformation and Software Technology10.1016/j.infsof.2017.11.00796:C(78-93)Online publication date: 1-Apr-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SoftVis '06: Proceedings of the 2006 ACM symposium on Software visualization
September 2006
199 pages
ISBN:1595934642
DOI:10.1145/1148493
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 September 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. 3D visualization
  2. dynamic analysis
  3. feature traces
  4. reverse engineering

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 20 of 65 submissions, 31%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)14
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Immersive Software Archaeology: Exploring Software Architecture and Design in Virtual Reality2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER60148.2024.00011(47-51)Online publication date: 12-Mar-2024
  • (2018)2.5D Extension of ChronoView for Exploring Periodic Features of Temporal Data2018 22nd International Conference Information Visualisation (IV)10.1109/iV.2018.00014(19-25)Online publication date: Jul-2018
  • (2018)A framework for the recovery and visualization of system availability scenarios from execution tracesInformation and Software Technology10.1016/j.infsof.2017.11.00796:C(78-93)Online publication date: 1-Apr-2018
  • (2017)A Taxonomy and Survey of Dynamic Graph VisualizationComputer Graphics Forum10.1111/cgf.1279136:1(133-159)Online publication date: 1-Jan-2017
  • (2016)Visual monitoring of process runs: An application study for stored procedures2016 IEEE Pacific Visualization Symposium (PacificVis)10.1109/PACIFICVIS.2016.7465264(160-167)Online publication date: Apr-2016
  • (2016)Dynamic networks analysis and visualization through spatiotemporal link segmentation2016 IEEE International Conference on Cloud Computing and Big Data Analysis (ICCCBDA)10.1109/ICCCBDA.2016.7529559(209-214)Online publication date: Jul-2016
  • (2016)Framing program comprehension as fault localizationJournal of Software: Evolution and Process10.1002/smr.179928:10(840-862)Online publication date: 1-Oct-2016
  • (2015)Runtime metric meets developer: building better cloud applications using feedback2015 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!)10.1145/2814228.2814232(14-27)Online publication date: 21-Oct-2015
  • (2014)A diagnosis-based approach to software comprehensionProceedings of the 22nd International Conference on Program Comprehension10.1145/2597008.2597151(37-47)Online publication date: 2-Jun-2014
  • (2013)Live trace visualization for comprehending large software landscapes: The ExplorViz approach2013 First IEEE Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT.2013.6650536(1-4)Online publication date: Sep-2013
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media