The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.07 - July (2011 vol.17)
pp: 913-933
Pierre Caserta , LORIA Laboratory, INPL Nancy University, Villers-les-Nancy
Olivier Zendra , INRIA Nancy Grand-Est, Villers-les-Nancy
ABSTRACT
Software is usually complex and always intangible. In practice, the development and maintenance processes are time-consuming activities mainly because software complexity is difficult to manage. Graphical visualization of software has the potential to result in a better and faster understanding of its design and functionality, thus saving time and providing valuable information to improve its quality. However, visualizing software is not an easy task because of the huge amount of information comprised in the software. Furthermore, the information content increases significantly once the time dimension to visualize the evolution of the software is taken into account. Human perception of information and cognitive factors must thus be taken into account to improve the understandability of the visualization. In this paper, we survey visualization techniques, both 2D- and 3D-based, representing the static aspects of the software and its evolution. We categorize these techniques according to the issues they focus on, in order to help compare them and identify the most relevant techniques and tools for a given problem.
INDEX TERMS
Visualization of software, software comprehension, software maintenance, human perception.
CITATION
Pierre Caserta, Olivier Zendra, "Visualization of the Static Aspects of Software: A Survey", IEEE Transactions on Visualization & Computer Graphics, vol.17, no. 7, pp. 913-933, July 2011, doi:10.1109/TVCG.2010.110
REFERENCES
[1] S. Eick, J. Steffen, and E. Sumner,Jr., "Seesoft—A Tool for Visualizing Line Oriented Software Statistics," IEEE Trans. Software Eng., vol. 18, no. 11, pp. 957-968, Nov. 1992.
[2] T. Ball and S. Eick, "Software Visualization in the Large," Computer, vol. 29, no. 4, pp. 33-43, Apr. 1996.
[3] A. Marcus, L. Feng, and J. Maletic, "3D Representations for Software Visualization," Proc. ACM Symp. Software Visualization, p. 27, 2003.
[4] A. Marcus, L. Feng, and J. Maletic, "Comprehension of Software Analysis Data Using 3D Visualization," Proc. 11th IEEE Int'l Workshop Program Comprehension, pp. 105-114, 2003.
[5] M. Lanza, "Object-Oriented Reverse Engineering—Coarse-Grained, Fine-Grained, and Evolutionary Software Visualization," PhD dissertation, Univ. of Bern, 2003.
[6] M. Lanza and S. Ducasse, "A Categorization of Classes Based on the Visualization of Their Internal Structure: The Class Blueprint," Proc. 16th ACM SIGPLAN Conf. Object-Oriented Programming, Systems, Languages, and Applications, pp. 300-311, 2001.
[7] S. Ducasse and M. Lanza, "The Class Blueprint: Visually Supporting the Understanding of Classes," IEEE Trans. Software Eng., vol. 31, no. 1, pp. 75-90, Jan. 2005.
[8] B. Johnson and B. Shneiderman, "Tree-Maps: A Space-Filling Approach to the Visualization of Hierarchical Information Structures," Proc. Second IEEE Conf. Visualization, pp. 284-291, 1991.
[9] B. Shneiderman, "Tree Visualization with Tree-Maps: 2D Space-Filling Approach," ACM Trans. Graphics, vol. 11, no. 1,pp. 92-99, Jan. 1992.
[10] D. Turo and B. Johnson, "Improving the Visualization of Hierarchies with Treemaps: Design issues and Experimentation," Proc. Third IEEE Conf. Visualizattion, pp. 124-131, 1992.
[11] W. Wang, H. Wang, G. Dai, and H. Wang, "Visualization of Large Hierarchical Data by Circle Packing," Proc. ACM SIGCHI Conf. Human Factors in Computing Systems, pp. 517-520, 2006.
[12] A. Dieberger, "The Information City—a Step Towards Merging of Hypertext and Virtual Reality," Proc. Conf. Hypertext, vol. 93, 1993.
[13] A. Dieberger, "Navigation in Textual Virtual Environments Using a City Metaphor," PhD dissertation, Vienna Univ. of Tech nology, 1994.
[14] C. Knight and M. Munro, "Virtual but Visible Software," Proc. Fourth IEEE Int'l Conf. Information Visualization, pp. 198-205, 2000.
[15] T. Panas, R. Berrigan, and J. Grundy, "A 3D Metaphor for Software Production Visualization," Proc. Seventh Int'l Conf. Information Visualization, pp. 314-319, 2003.
[16] K. Andrews and H. Heidegger, "Information Slices: Visualising and Exploring Large Hierarchies Using Cascading, Semi-Circular Discs," Proc. IEEE Symp. Information Visualization, pp. 9-11, Oct. 1998.
[17] M. Chuah, "Dynamic Aggregation with Circular Visual Designs," Proc. IEEE Symp. Information Visualization, pp. 35-43, 1998.
[18] J. Stasko and E. Zhang, "Focus + Context Display and Navigation Techniques for Enhancing Radial, Space-Filling Hierarchy Visualizations," Proc. IEEE Symp. Information Visualization, pp. 57-65, 2000.
[19] H. Yang and H. Graham, "Software Metrics and Visualisation," technical report, Univ. of Auckland, 2003.
[20] H. Graham, H. Yang, and R. Berrigan, "A Solar System Metaphor for 3D Visualisation of Object-Oriented Software Metrics," Proc. Australasian Symp. Information Visualization, vol. 35, pp. 53-59, 2004.
[21] M. Balzer, O. Deussen, and C. Lewerentz, "Voronoi Treemaps for the Visualization of Software Metrics," Proc. ACM Symp. Software Visualization, pp. 165-172, 2005.
[22] D. Steward, "The Design Structure Matrix: A Method for Managing the Design of Complex Systems," IEEE Trans. Eng. Management, vol. 28, no. 3, pp. 71-74, 1981.
[23] T. Browning, L. Co, and F. Worth, "Applying the Design Structure Matrix to System Decomposition and Integration Problems: A Review and New Directions," IEEE Trans. Eng. Management, vol. 48, no. 3, pp. 292-306, Aug. 2002.
[24] N. Sangal, E. Jordan, V. Sinha, and D. Jackson, "Using Dependency Models to Manage Complex Software Architecture," Proc. 20th Conf. Object Oriented Programming, Systems, Languages, and Applications, 2005.
[25] C. Gutwenger, M. Jünger, K. Klein, J. Kupke, S. Leipert, and P. Mutzel, "A New Approach for Visualizing UML Class Diagrams," Proc. ACM Symp. Software Visualization, pp. 179-188, 2003.
[26] J. Gil and S. Kent, "Three Dimensional Software Modelling," Proc. 20th IEEE Int'l Conf. Software Eng., pp. 105-114, 1998.
[27] M. Gogolla, O. Radfelder, and M. Richters, "Towards Three-Dimensional Representation and Animation of UML Diagrams," Lecture Notes in Computer Science, pp. 489-502, Springer, 1999.
[28] O. Radfelder and M. Gogolla, "On Better Understanding UML Diagrams through Interactive Three-Dimensional Visualization and Animation," Proc. Conf. Advanced Visual Interfaces, 2000.
[29] M. Balzer, A. Noack, O. Deussen, and C. Lewerentz, "Software Landscapes: Visualizing the Structure of Large Software Systems," Proc. Joint Eurographics and IEEE TCVG Symp. Visualization, 2004.
[30] M. Balzer and O. Deussen, "Hierarchy Based 3D Visualization of Large Software Structures," Proc. IEEE Conf. Visualization, p. 4, 2004.
[31] D. Holten, "Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data," IEEE Trans. Visualization and Computer Graphics, vol. 12, no. 5,, pp. 741-748, Sept./Oct. 2006.
[32] S. Alam and D. Ph, "EvoSpaces: 3D Visualization of Software Architecture," Proc. Int'l Conf. Software Eng. and Knowledge Eng., 2007.
[33] S. Alam and P. Dugerdil, "Evospaces Visualization Tool: Exploring Software Architecture in 3D," Proc. 14th Conf. Reverse Eng., pp. 269-270, 2007.
[34] T. Panas, T. Epperly, D. Quinlan, A. Saebjornsen, and R. Vuduc, "Communicating Software Architecture Using a Unified Single-View Visualization," Proc. 12th IEEE Int'l Conf. Eng. Complex Computer Systems, pp. 217-228, 2007.
[35] M. Balzer and O. Deussen, "Level-of-Detail Visualization of Clustered Graph Layouts," Proc. Asia-Pacific Symp. Visualization, 2007.
[36] S. Demeyer, S. Ducasse, and M. Lanza, "A Hybrid Reverse Engineering Approach Combining Metrics and Program Visualisation," Proc. Sixth Working Conf. Reverse Eng., pp. 175-186, 1999.
[37] M. Lanza and S. Ducasse, "Polymetric Views—A Lightweight Visual Approach to Reverse Engineering," IEEE Trans. Software Eng., vol. 29, no. 9, pp. 782-795, Sept. 2003.
[38] M. Termeer, C. Lange, A. Telea, and M. Chaudron, "Visual Exploration of Combined Architectural and Metric Information," Proc. Third IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, p. 11, 2005.
[39] D. Holten, R. Vliegen, and J. van Wijk, "Visual Realism for the Visualization of Software Metrics," Proc. Third IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, p. 12, 2005.
[40] G. Langelier, H. Sahraoui, and P. Poulin, "Visualization-Based Analysis of Quality for Large-Scale Software Systems," Proc. 20th IEEE/ACM Int'l Conf. Automated Software Eng., pp. 214-223, 2005.
[41] K. Dhambri, H.A. Sahraoui, and P. Poulin, "Visual Detection of Design Anomalies," Proc. 12th European Conf. Software Maintenance and Reeng., pp. 279-283, 2008.
[42] R. Wettel and M. Lanza, "Visualizing Software Systems as Cities," Proc. Fourth IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, 2007.
[43] R. Wettel and M. Lanza, "Visually Localizing Design Problems with Disharmony Maps," Proc. Fourth ACM Symp. Software Visualization, 2008.
[44] H. Byelas and A. Telea, "Visualization of Areas of Interest in Software Architecture Diagrams," Proc. Symp. Software Visualization, 2006.
[45] H. Byelas and A. Telea, "Visualizing Metrics on Areas of Interest in Software Architecture Diagrams," Proc. Pacific Visualization Symp., 2009.
[46] F. Chevalier, D. Auber, and A. Telea, "Structural Analysis and Visualization of C++ Code Evolution Using Syntax Trees," Proc. Ninth Int'l Workshop Principles of Software Evolution. 2007.
[47] A. Telea and D. Auber, "Code Flows: Visualizing Structural Evolution of Source Code," Computer Graphics Forum, vol. 27, pp. 831-838, 2008.
[48] R. Wettel and M. Lanza, "Visual Exploration of Large-Scale System Evolution," Proc. 15th IEEE Working Conf. Reverse Eng., 2008.
[49] D. Holten and J. van Wijk, "Visual Comparison of Hierarchically Organized Data," Computer Graphics Forum, vol. 27, no. 3, pp. 759-766, 2008.
[50] M. Lanza, "The Evolution Matrix: Recovering Software Evolution Using Software Visualization Techniques," Proc. Fourth Int'l Workshop Principles of Software Evolution, pp. 37-42, 2001.
[51] M. Lanza and S. Ducasse, "Understanding Software Evolution Using a Combination of Software Visualization and Software Metrics," Proc. Langages et Modeles à Objets, pp. 135-149, 2002.
[52] M. Pinzger, H. Gall, M. Fischer, and M. Lanza, "Visualizing Multiple Evolution Metrics," Proc. Symp. Software Visualization, 2005.
[53] G. Langelier, H.A. Sahraoui, and P. Poulin, "Exploring the Evolution of Software Quality with Animated Visualization," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, 2008.
[54] F. Abreu, M. Goulão, and R. Esteves, "Toward the Design Quality Evaluation of Object-Oriented Software Systems," Proc. Fifth Int'l Conf. Software Quality, pp. 44-57, 1995.
[55] A. Von Mayrhauser and A.M. Vans, "Identification of Dynamic Comprehension Processes During Large Scale Maintenance," IEEE Trans. Software Eng., vol. 22, no. 6, pp. 424-437, June 1996.
[56] M. Storey, K. Wong, and H. Müller, "How Do Program Understanding Tools Affect How Programmers Understand Programs?" Science of Computer Programming, vol. 36, pp. 183-207, 2000.
[57] G. Roman and K. Cox, "Program Visualization: The Art of Mapping Programs to Pictures," Proc. 14th ACM Int'l Conf. Software Eng., pp. 412-420, 1992.
[58] D. Marr, Vision: A Computational Investigation into the Human Representation and Processing of Visual Information. Henry Holt and Co., 1982.
[59] I. Biederman, "Recognition-by-Components: A Theory of Human Image Understanding," Psychological Rev., vol. 94, pp. 115-147, 1987.
[60] I. Spence, "Visual Psychophysics of Simple Graphical Elements," J. Experimental Psychology: Human Perception and Performance, vol. 16, pp. 683-692, 1990.
[61] J. Stasko, Software Visualization: Programming as a Multimedia Experience. MIT Press, 1998.
[62] S. Diehl, Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer Verlag, Inc., 2007.
[63] R. Grady, Practical Software Metrics for Project Management and Process Improvement. Prentice-Hall, 1992.
[64] K. Zhang, Software Visualization: From Theory to Practice. Springer, Inc., 2003.
[65] M. Storey, F. Fracchia, and H. Müller, "Cognitive Design Elements to Support the Construction of a Mental Model During Software Exploration," J. Systems and Software, vol. 44, pp. 171-185, 1999.
[66] M. Scaifeand and Y. Rogers, "External Cognition: How Do Graphical Representations Work?" Int'l J. Human-Computer Studies, vol. 45, pp. 185-213, 1996.
[67] M. Petre, A. Blackwell, and T. Green, "Cognitive Questions in Software Visualization," Software Visualization: Programming as a Multi-Media Experience, pp. 453-480, MIT Press, 1998.
[68] M. Tudoreanu, "Designing Effective Program Visualization Tools for Reducing User's Cognitive Effort," Proc. ACM Symp. Software Visualization, 2003.
[69] M. Tory and T. Moller, "Human Factors in Visualization Research," IEEE Trans. Visualization and Computer Graphics, vol. 10, no. 1, pp. 72-84, Jan. 2004.
[70] S. Card, J. Mackinlay, and B. Shneiderman, Readings in Information Visualization: Using Vision to Think, Morgan Kaufmann, 1999.
[71] J.T. Stasko, "Three-Dimensional Computation Visualization," Proc. IEEE Symp. Visual Languages, pp. 100-107, 1993.
[72] S. Reiss, "An Engine for the 3D Visualization of Program Information," Technical Report CS-95-14, Brown Univ., 1995.
[73] A. Telea and L. Voinea, "An Interactive Reverse Engineering Environment for Large-Scale C++ Code," Proc. Fourth ACM Symp. Software Visualization, pp. 67-76, 2008.
[74] A. Telea, H. Byelas, and L. Voinea, "A Framework for Reverse Engineering Large C++ Code Bases," Electronic Notes in Theoretical Computer Science, vol. 233, pp. 143-159, 2009.
[75] P. Young, "Three Dimensional Information Visualisation," Technical Report 12/96, Univ. of Durham, 1996.
[76] A.R. Teyseyre and M.R. Campo, "An Overview of 3D Software Visualization," IEEE Trans. Visualization and Computer Graphics, vol. 15, no. 1,pp. 87-105, Jan./Feb., 2009.
[77] G. Parker, G. Franck, and C. Ware, "Visualization of Large Nested Graphs in 3D: Navigation and Interaction," J. Visual Languages and Computing, vol. 9, no. 3, pp. 299-317, 1998.
[78] B. Price, R. Baecker, and I. Small, "A Principled Taxonomy of Software Visualization," J. Visual Languages and Computing, vol. 4, no. 3, pp. 211-266, 1993.
[79] G. Roman et al., "A Taxonomy of Program Visualization Systems," Computer, vol. 26, no, 12, pp. 11-24, Dec. 1993.
[80] C. Knight, "System and Software Visualisation," Handbook of Software Engineering and Knowledge Engineering, pp. 1-17, World Scientific Publishing Company, 2001.
[81] J. Maletic, A. Marcus, and M. Collard, "A Task Oriented View of Software Visualization," Proc. First Int'l Workshop Visualizing Software for Understanding and Analysis, pp. 32-40, 2002.
[82] S. Bassil and R. Keller, "Software Visualization Tools: Survey and Analysis," Proc. Ninth IEEE Int'l Workshop Program Comprehension, pp. 7-17, May 2001.
[83] D. Gracanin, K. Matkovic, and M. Eltoweissy, "Software Visualization," Innovations in Systems and Software Eng., vol. 1, no. 2, pp. 221-230, 2005.
[84] M. Storey, D. Cubranic, and D. German, "On the Use of Visualization to Support Awareness of Human Activities in Software Development: A Survey and a Framework," Proc. ACM Symp. Software Visualization, pp. 193-202, 2005.
[85] M. Petre and E. de Quincey, "A Gentle Overview of Software Visualisation," PPIG News Letter, pp. 1-10, Sept. 2006.
[86] Y. Carpendale and S. Ghanam, "A Survey Paper on Software Architecture Visualization," technical report, Univ. of Calgary, 2008.
[87] R. Koschke, "Software Visualization in Software Maintenance, Reverse Engineering, and Re-Engineering: A Research Survey," J. Software Maintenance and Evolution: Research and Practice, vol. 15, no. 2, Mar. 2003.
[88] T. Panas, J. Lundberg, and W. Löwe, "Reuse in Reverse Engineering," Proc. Int'l Conf. Program Comprehension, 2004.
[89] M. Green and J. Rekimoto, "The Information Cube: Using Transparency in 3D Information Visualization," Proc. Third Ann. Workshop Information Technologies and Systems (WITS '93), pp. 125-132, 1993.
[90] J. Mackinlay, "Automating the Design of Graphical Presentations of Relational Information," Trans. Graphics, vol. 5, no. 2, pp. 110-141, 1986.
[91] N. Churcher, W. Irwin, and R. Kriz, "Visualising Class Cohesion with Virtual Worlds," Proc. Asia-Pacific Symp. Informattion Visualisation, 2003.
[92] M. Lanza, R. Marinescu, and S. Ducasse, Object-Oriented Metrics in Practice: Using Software Metrics to Characterize, Evaluate, and Improve the Design of Object-Oriented Systems. Springer-Verlag, 2006.
[93] M. Denford, T. O'Neill, and J. Leaney, "Architecture-Based Visualisation of Computer Based Systems," Proc. Ninth IEEE Int'l Conf. Eng. of Computer-Based Systems, pp. 139-146, 2002.
[94] A. Hatch, "Software Architecture Visualisation," PhD dissertation, Univ. of Durham, 2004.
[95] K. Gallagher, A. Hatch, and M. Munro, "A Framework for Software Architecture Visualisation Assessment," Proc. Third IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, p. 22, 2005.
[96] K. Gallagher, A. Hatch, and M. Munro, "Software Architecture Visualization: An Evaluation Framework and Its Application," IEEE Trans. Software Eng., vol. 34, no. 2, pp. 260-270, Mar./Apr., 2008.
[97] U. Wiss and D. Carr, "An Empirical Study of Task Support in 3D Information Visualizations," Proc. Third Int'l Conf. Information Visualisation (IV '99), 1999.
[98] A. Kerren, A. Ebert, and J. Meyer, Human-Centered Visualization Environments. Springer-Verlag, 2007.
[99] C. Wetherell and A. Shannon, "Tidy Drawings of Trees," IEEE Trans. Software Eng., vol. SE-5, no. 5, pp. 514-520, Sept., 1979.
[100] J. Lamping and R. Rao, "The Hyperbolic Browser: A Focus + Context Technique for Visualizing Large Hierarchies," J. Visual Languages and Computing, vol. 7, no. 1, pp. 33-55, 1996.
[101] G. Di Battista, P. Eades, R. Tamassia, and I. Tollis, Graph Drawing: Algorithms for the Visualization of Graphs. Prentice Hall, 1998.
[102] T. Barlow and P. Neville, "A Comparison of 2D Visualizations of Hierarchies," Proc. IEEE Symp. Information Visualization, pp. 131-138, 2001.
[103] J. Stasko, R. Catrambone, M. Guzdial, and K. McDonald, "An Evaluation of Space-Filling Information Visualizations for Depicting Hierarchical Structures," Int'l J. Human Computer Studies, vol. 53, pp. 663-694, 2000.
[104] J. Van Wijk and H. Van de Wetering, "Cushion Treemaps: Visualization of Hierarchical Information," Proc. IEEE Symp. Information Visualization, pp. 73-78, 1999.
[105] P. Irani, D. Slonowsky, and P. Shajahan, "Human Perception of Structure in Shaded Space-Filling Visualizations," Information Visualization, vol. 5, no. 1, pp. 47-61, 2006.
[106] N. Churcher, L. Keown, and W. Irwin, "Virtual Worlds for Software Visualisation," Proc. Software Visualisation Workshop, 1999.
[107] F. van Ham and J. van Wijk, "Beamtrees: Compact Visualization of Large Hierarchies," Information Visualization, vol. 2, no. 1, pp. 31-39, 2003.
[108] T. Bladh, D. Carr, and J. Scholl, "Extending Tree-Maps to Three Dimensions: A Comparative Study," Lecture Notes in Computer Science, pp. 50-59, Springer, 2004.
[109] T. Bladh, D. Carr, and M. Kljun, "The Effect of Animated Transitions on User Navigation in 3D Treemaps," Proc. Ninth Int'l Conf. Information Visualisation, 2005.
[110] M. Storey, H. Müller, and W.K., "Manipulating and Documenting Software Structures," Software Visualization, pp. 244-263, World Scientific Publishing Co., 1996.
[111] J. Wu and M. Storey, "A Multi-Perspective Software Visualization Environment," Proc. 2000 Conf. Centre for Advanced Studies on Collaborative Research, p. 15, 2000.
[112] M. Storey, C. Best, and J. Michand, "SHriMP Views: An Interactive Environment for Exploring Java Programs," Proc. Ninth Int'l Workshop Program Comprehension, pp. 111-112, 2001.
[113] G. Furnas, "Generalized Fisheye Views," ACM SIGCHI Bull., vol. 17, no. 4, pp. 16-23, 1986.
[114] R. Baecker and I. Small, "Animation at the Interface," The Art of Human-Computer Interface Design, B. Laurel, ed., pp. 251-267, Addison-Wesley, 1990.
[115] G. Robertson, S. Card, and J. Mackinlay, "Information Visualization Using 3D Interactive Animation," Comm. ACM, vol. 36, no. 4, pp. 57-71, 1993.
[116] M. Storey and H. Müller, "Manipulating and Documenting Software Structures Using SHriMP Views," Proc. Int'l Conf. Software Maintenance, pp. 275-284, 1995.
[117] H.A. Müller, "Rigi: A Model for Software System Construction, Integration, and Evolution Based on Module Interface Specifications," PhD dissertation, Rice Univ., 1986.
[118] M. Storey, K. Wong, and H. Müller, "Rigi: A Visualization Environment for Reverse Engineering," Proc. 19th ACM Int'l Conf. Software Eng., pp. 606-607, 1997.
[119] H. Kienle and H. Muller, "The Rigi Reverse Engineering Environment," Proc. Int'l Workshop Advanced Software Development Tools and Techniques (WASDeTT), 2008.
[120] C. Dos Santos, P. Gros, P. Abel, D. Loisel, N. Trichaud, J. Paris, C. Telecom, and S. Antipolis, "Mapping Information onto 3D Virtual Worlds," Proc. IEEE Int'l Conf. Information Visualization, pp. 379-386, 2000.
[121] D. Ploix, "Analogical Representations of Programs," Proc. First Int'l Workshop Visualizing Software for Understanding and Analysis, pp. 61-69, 2002.
[122] E. Kleiberg, H. van de Wetering, and J. Van Wijk, "Botanical Visualization of Huge Hierarchies," Proc. IEEE Symp. Information Visualization (INFOVIS '01), 2001.
[123] C. Russo Dos Santos, P. Gros, P. Abel, D. Loisel, N. Trichaud, and J. Paris, "Metaphor-Aware 3D Navigation," Proc. IEEE Symp. Information Visualization (INFOVIS '00), pp. 155-165, 2000.
[124] A. Dieberger and A. Frank, "A City Metaphor to Support Navigation in Complex Information Spaces," J. Visual Languages and Computing, vol. 9, no. 6, pp. 597-622, 1998.
[125] K. Lynch, The Image of the City. MIT Press, 1960.
[126] C. Knight and M. Munro, "Comprehension with[in] Virtual Environment Visualisations," Proc. Seventh Int'l Workshop Program Comprehension, pp. 4-11, 1999.
[127] S. Charters, C. Knight, N. Thomas, and M. Munro, "Visualisation for Informed Decision Making; From Code to Components," Proc. 14th Int'l Conf. Software Eng. and Knowledge Eng., 2002.
[128] T. Munzner, "H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space," Proc. IEEE Symp. Information Visualization (INFOVIS '97), pp. 2-10, 1997.
[129] I. Herman, M. Marshall, and G. Melançon, "Graph Visualization and Navigation in Information Visualization: A Survey," IEEE Trans. Visualization and Computer Graphics, vol. 6, no. 1, pp. 24-43, 2000.
[130] C. Lewerentz and A. Noack, "CrocoCosmos—3D Visualization of Large Object-Oriented Programs," Graph Drawing Software. Springer-Verlag, 2003.
[131] A. Noack and C. Lewerentz, "A Space of Layout Styles for Hierarchical Graph Models of Software Systems," Proc. ACM Symp. Software Visualization, pp. 155-164, 2005.
[132] H. Schulz and H. Schumann, "Visualizing Graphs—A Generalized View," Proc. IEEE Conf. Information Visualization, pp. 166-173, 2006.
[133] M. Staples and J. Bieman, "3D Visualization of Software Structure," Advances in Computers, vol. 49, pp. 96-143, 1999.
[134] A. Fronk, A. Bruckhoff, and M. Kern, "3D Visualisation of Code Structures in Java Software Systems," Proc. Symp. Software Visualization, 2006.
[135] A. Hanson, E. Wernert, and S. Hughes, "Constrained Navigation Environments," Proc. Scientific Visualization Conf., p. 95, 1997.
[136] A. Ahmed and P. Eades, "Automatic Camera Path Generation for Graph Navigation in 3D," Proc. ACM Int'l Conf., pp. 27-32, 2005.
[137] A. Bergel, S. Ducasse, J. Laval, and R. Peirs, "Enhanced Dependency Structure Matrix for Moose," Proc. Second Workshop FAMIX and Moose in Re-Eng., 2008.
[138] J. Laval, S. Denier, S. Ducasse, and A. Bergel, "Identifying Cycle Causes with Enriched Dependency Structural Matrix," Proc. 16th Working Conf. Reverse Eng., pp. 113-122, 2009.
[139] H. Abdeen, I. Alloui, S. Ducasse, D. Pollet, M. Suen, and I. Europe, "Package Reference Fingerprint: A Rich and Compact Visualization to Understand Package Relationships," Proc. 12th European Conf. Software Maintenance and Re-Eng., 2008.
[140] H. Purchase, J. Allder, and D. Carrington, "User Preference of Graph Layout Aesthetics: A UML Study," Lecture Notes in Computer Science, pp. 5-18, Springer, 2001.
[141] D. Sun and K. Wong, "On Evaluating the Layout of UML Class Diagrams for Program Comprehension," Proc. 13th Int'l Workshop Program Comprehension, pp. 317-326, 2005.
[142] M. Eiglsperger, "Automatic Layout of UML Class Diagrams: A Topology-Shape-Metrics Approach," PhD dissertation, Univ. Tübingen, 2003.
[143] P. Irani and C. Ware, "Diagrams Based on Structural Object Perception," Proc. Working Conf. Advanced Visual Interfaces, 2000.
[144] P. Irani, M. Tingley, and C. Ware, "Using Perceptual Syntax to Enhance Semantic Content in Diagrams," IEEE Computer Graphics and Applications, vol. 21, no. 5, pp. 76-85, Sept. 2001.
[145] K. Casey and C. Exton, "A Java 3D Implementation of a Geon Based Visualisation Tool for UML," Proc. Second Int'l Conf. Principles and Practice of Programs in Java, pp. 63-65, 2003.
[146] P. Irani and C. Ware, "Diagramming Information Structures Using 3D Perceptual Primitives," ACM Trans. Computer-Human Interaction, vol. 10, no. 1, pp. 1-19, 2003.
[147] M. Pinzger, K. Graefenhain, P. Knab, and H.C. Gall, "A Tool for Visual Understanding of Source Code Dependencies," Proc. 16th Int'l Conf. Program Comprehension. pp. 254-259, 2008.
[148] J. Fekete, D. Wang, N. Dang, A. Aris, and C. Plaisant, "Overlaying Graph Links on Treemaps," Proc. 2003 IEEE Symp. Information Visualization, pp. 82-83, 2003.
[149] N. Wong, S. Carpendale, and S. Greenberg, "Edgelens: An Interactive Method for Managing Edge Congestion in Graphs," Proc. 2003 IEEE Symp. Information Visualization, pp. 51-58, 2003.
[150] M. Tory, A. Kirkpatrick, M. Atkins, and T. Moller, "Visualization Task Performance with 2D, 3D, and Combination Displays," IEEE Trans. Visualization amd Computer Graphics, vol. 12, no. 1, pp. 2-13, Jan. 2006.
[151] W. Löwe and T. Panas, "Rapid Construction of Software Comprehension Tools," Int'l J. Software Eng. and Knowledge Eng., vol. 15, pp. 995-1025, 2005.
[152] T. Panas, R. Lincke, and W. Löwe, "Online-Configuration of Software Visualizations with Vizz3D," Proc. Symp. Software Visualization, 2005.
[153] P. Young and M. Munro, "Visualising Software in Virtual Reality," Proc. Sixth Int'l Workshop Program Comprehension, pp. 19-26, 1998.
[154] N. Fenton, Software Metrics: A Rigorous Approach. Chapman & Hall, Ltd., 1991.
[155] M. Lorenz and J. Kidd, Object-Oriented Software Metrics: A Practical Guide. Prentice-Hall, Inc., 1994.
[156] N. Fenton and S. Pfleeger, Software Metrics: A Rigorous and Practical Approach. PWS Publishing Co., 1997.
[157] B. Meyer and G. EiffelSoft, "The Role of Object-Oriented Metrics," Computer, vol. 31, no. 11, pp. 123-127, Nov. 1998.
[158] G. Booch, R.A. Maksimchuk, M.W. Engel, B.J. Young, J. Conallen, and K.A. Houston, Object-Oriented Analysis and Design with Applications, third ed. Addison-Wesley Professional, 2007.
[159] D. Card and R. Glass, Measuring Software Design Quality. Prentice-Hall, Inc., 1990.
[160] S. Kan, Metrics and Models in Software Quality Engineering. Addison-Wesley Longman Publishing Co., 2002.
[161] D. Troy and S. Zweben, Measuring the Quality of Structured Designs. McGraw-Hill, Inc., 1993.
[162] I. Brooks, "Object-Oriented Metrics Collection and Evaluation with a Software Process," Proc. Workshop Processes and Metrics for Object-Oriented Software Development, 1993.
[163] C. Chen, Information Visualization: Beyond the Horizon. Springer, Inc., 2004.
[164] C. Ware, Information Visualization: Perception for Design. Morgan Kaufmann, 2004.
[165] W. Irwin and N. Churcher, "Object-Oriented Metrics: Precision Tools and Configurable Visualisations," Proc. Ninth IEEE Int'l Software Metrics Symp., pp. 112-123, 2003.
[166] M. Lanza, "CodeCrawler—Lessons Learned in Building a Software Visualization Tool," Proc. IEEE European Conf. Software Maintenance and Reeng., 2003.
[167] S. Ducasse, M. Lanza, and S. Tichelaar, "The Moose Reengineering Environment," Smalltalk Chronicles, vol. 3, no. 2, 2001.
[168] S. Ducasse, T. Gîrba, and O. Nierstrasz, "Moose: An Agile Reengineering Environment," Proc. 10th European Software Eng. Conf. Held Jointly with 13th ACM Int'l Symp. Foundations of Software Eng., 2005.
[169] IEEE Standard for a Software Quality Metrics Methodology, technical report, Am. Nat'l Standards Inst., 1998.
[170] C.G. Healey and J.T. Enns, "Building Perceptual Textures to Visualize Multidimensional Datasets," Proc. IEEE Conf. Visualization '98, pp. 111-118, 1998.
[171] W. Brown, R. Malveau, H. McCormick,III, and T. Mowbray, AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis. John Wiley & Sons, Inc., 1998.
[172] I. Herman, M. Delest, and G. Melancon, "Tree Visualisation and Navigation Clues for Information Visualisation," Computer Graphics Forum, vol. 17, pp. 153-165, 1998.
[173] D. Todorovic, "Gestalt Principles," http://www.scholarpedia. org/articleGestalt_principles , 2010.
[174] R. Wettel and M. Lanza, "Program Comprehension through Software Habitability," Proc. 15th IEEE Int'l Conf. Program Comprehension, 2007.
[175] S. Few, Show Me the Numbers: Designing Tables and Graphs to Enlighten. Analytics Press, 2004.
[176] S. Boccuzzo and H. Gall, "Cocoviz: Towards Cognitive Software Visualizations," Proc. Fourth IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, pp. 72-79, 2007.
[177] S. Boccuzzo and H. Gall, "Software Visualization with Audio Supported Cognitive Glyphs," Proc. Int'l Conf. Software Maintenance, 2008.
[178] V. Basili, L. Briand, and W. Melo, "A Validation of Object-Oriented Design Metrics as Quality Indicators," IEEE Trans. Software Eng., vol. 22, no. 10, pp. 751-761, Oct. 1996.
[179] R. Subramanyam and M.S. Krishnan, "Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects," IEEE Trans. Software Eng., vol. 29, no. 4, pp. 297-310, Apr. 2003.
[180] H.M. Olague, L.H. Etzkorn, S. Gholston, and S. Quattlebaum, "Empirical Validation of Three Software Metrics Suites to Predict Fault-Proneness of Object-Oriented Classes Developed Using Highly Iterative or Agile Software Development Processes," IEEE Trans. Software Eng., vol. 33, no. 6,, pp. 402-419, June 2007.
[181] S. Eick, T. Graves, A. Karr, A. Mockus, and P. Schuster, "Visualizing Software Changes," IEEE Trans. Software Eng., vol. 28, no. 4, pp. 396-412, Apr. 2002.
[182] A. Hindle, Z. Jiang, W. Koleilat, M. Godfrey, and R. Holt, "Yarn: Animating Software Evolution," Proc. IEEE Int'l Workshop Visualizing Software for Understanding and Analysis, pp. 25-26, 2008.
[183] H. Gall, M. Jazayeri, and C. Riva, "Visualizing Software Release Histories: The Use of Color and Third Dimension," Proc. Int'l Conf. Software Maintenance, pp. 99-108, 1999.
[184] C. Collberg, S. Kobourov, J. Nagra, J. Pitts, and K. Wampler, "A System for Graph-Based Visualization of the Evolution of Software," Proc. ACM Symp. Software Visualization, 2003.
[185] T. Girba, A. Kuhn, M. Seeberger, and S. Ducasse, "How Developers Drive Software Evolution," Proc. Eighth Int'l Workshop Principles of Software Evolution, pp. 113-122, 2005.
[186] X. Xie, D. Poshyvanyk, and A. Marcus, "Visualization of CVS Repository Information," Proc. 13th Working Conf. Reverse Eng., 2006.
[187] M. Fischer and H. Gall, "Evograph: A Lightweight Approach to Evolutionary and Structural Analysis of Large Software Systems," Proc. 13th Working Conf. Reverse Eng., pp. 179-188, 2006.
[188] M. Shanmugasundaram, P. Irani, and C. Gutwin, "Can Smooth View Transitions Facilitate Perceptual Constancy in Node-Link Diagrams?" Proc. ACM Int'l Conf. Graphics Interface, p. 78, 2007.
[189] Y. Tu and H.-W. Shen, "Visualizing Changes of Hierarchical Data Using Treemaps," IEEE Trans. Visualization and Computer Graphics, vol. 13, no. 6, pp. 1286-1293, Nov./Dec. 2007.
[190] M. Pinzger, H. Gall, and M. Jazayeri, "ArchView—Analyzing Evolutionary Aspects of Complex Software Systems," Technical Univ. of Vienna, 2005.
[191] A. Kerren and I. Jusufi, "Novel Visual Representations for Software Metrics Using 3D and Animation," Proc. Software Eng., 2009.
[192] R. Bril, A. Postma, and R. Krikhaar, "Embedding Architectural Support in Industry," Proc. Int'l Conf. Software Maintenance, 2003.
32 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool