Abstract
Debugging as a process involves the examination of the runtime state of objects in order to identify potential defects and the way they are actually propagated among objects (infection). Interactive tools improved the overall conduct of the process by enabling users more efficiently and effectively track down state faults. But as systems grow, the runtime state of programs explodes to encompass a huge number of objects. The later requires state inspection following runtime object associations, thus involving graph views. Existing graph visualizers are not popular because they are mostly visualization than interaction oriented, implementing general-purpose graph drawing algorithms. The latter explains why prominent development environments still adopt traditional tree views. We introduce a debugging assistant with a visualization technique designed to better fit the task of defect detection in runtime object networks, also supporting advanced inspection and configuration features.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aftandilian, E., Kelley, S., Gramazio, C., Ricci, N., Su, S., Guyer, S.: Heapviz: Interactive Heap Visualization for Program Understanding and Debugging. In: ACM SoftVis 2010, Salt Lake City, Utah, October 25-26, pp. 53–62 (2010)
Battista, D.G., Eades, P., Tamassia, R., Tollis, I.G.: Graph Drawing: Algorithms for the Visualization of Graphs. Prentice-Hall, Englewood Cliffs (1999)
De Pauw, W., Sevitsky, G.: Visualizing Reference Patterns for Solving Memory Leaks in Java. In: Liu, H. (ed.) ECOOP 1999. LNCS, vol. 1628, pp. 116–134. Springer, Heidelberg (1999)
Gansner, E., North, S.C.: An open graph visualization system and its applications to software engineering. Software Practice & Experience 30(11), 1203–1233 (1999)
GNU DDD (2009). Data Display Debugger (version 3.3), http://www.gnu.org/software/ddd/
Hill, T., Noble, J., Potter, J.: Scalable Visualizations of Object-Oriented Systems with Ownership Trees. Journal of Visual Languages and Computing 13, 319–339 (2002)
Kranzlmuller, D., Grabner, S., Volkert, J.: Event Graph Visualization for Debugging Large Applications. In: Proceedings of ACM SPDT 1996, Philadelphia, PA, pp. 108–117 (1996)
Lange, D.B., Nakamura, Y.: Object-oriented program tracing and visualization. IEEE Computer 30(5), 63–70 (1997)
Müller, T.: Practical Investigation of Constraints with Graph Views. In: Dechter, R. (ed.) CP 2000. LNCS, vol. 1894, pp. 320–336. Springer, Heidelberg (2000)
Reiss, S.: Visualizing the Java heap to detect memory problems. In: Proceedings of VISSOFT 2009 5th IEEE International Workshop on Visualizing Software for Understanding and Analysis, pp. 73–80 (2009)
Savidis, A.: Delta Programming Language. Official web site (2010), http://www.ics.forth.gr/hci/files/plang/Delta/Delta.html
Savidis, A., Lilis, Y.: Support for Language Independent Browsing of Aggregate Values by Debugger Backends. Journal of Object Technology 8(6), 159–180 (2009), http://www.jot.fm/issues/issue_2009_09/article4.pdf
Yi, J. S., Kang, Y., Stasko, J., Jacko, J.: Understanding and Characterizing Insights: How Do People Gain Insights Using Information Visualization? In: ACM BELIV 2008, Florence, Italy, pp. 1–6 (April 5, 2008)
Zeller, A.: Why Programs Fail: A Guide to Systematic Debugging. Morgan Kaufmann, San Francisco (2005)
Zimmermann, T., Zeller, A.: Visualizing memory graphs. In: Diehl, S. (ed.) Dagstuhl Seminar 2001. LNCS, vol. 2269, pp. 191–204. Springer, Heidelberg (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Savidis, A., Koutsopoulos, N. (2011). Interactive Object Graphs for Debuggers with Improved Visualization, Inspection and Configuration Features. In: Bebis, G., et al. Advances in Visual Computing. ISVC 2011. Lecture Notes in Computer Science, vol 6938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24028-7_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-24028-7_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24027-0
Online ISBN: 978-3-642-24028-7
eBook Packages: Computer ScienceComputer Science (R0)