From the Publisher:
In the past decade, high-quality interfaces have become standard in a growing number of areas such as games and CD-ROM-based encyclopedias. Yet the overwhelming majority of programmers edit their code using a single font within a single window and view code execution via the hand insertion of print statements. Software Visualization (SV) redresses this imbalance by using typography, graphics, and animation techniques to show program code, data, and control flow. This book describes the history of SV, techniques and frameworks for its construction, its use in education and program debugging, and recent attempts to evaluate its effectiveness. In making programming a multimedia experience, SV leaves programmers and computer science researchers free to explore more interesting issues and to tackle more challenging problems.
Cited By
- Francese R, Risi M, Scanniello G and Tortora G (2016). Proposing and assessing a software visualization approach based on polymetric views, Journal of Visual Languages and Computing, 34:C, (11-24), Online publication date: 1-Jun-2016.
- Demetrescu C, Finocchi I and Ribichini A (2014). Reactive Imperative Programming with Dataflow Constraints, ACM Transactions on Programming Languages and Systems, 37:1, (1-53), Online publication date: 20-Jan-2015.
- Isohanni E and Järvinen H Are visualization tools used in programming education? Proceedings of the 14th Koli Calling International Conference on Computing Education Research, (35-40)
- Risi M and Scanniello G MetricAttitude Proceedings of the International Working Conference on Advanced Visual Interfaces, (449-456)
- Erra U and Scanniello G Towards the visualization of software systems as 3D forests Proceedings of the 27th Annual ACM Symposium on Applied Computing, (981-988)
- Shi J, Qiao Y and Wang H Visualizing inference process of a rule engine Proceedings of the 2011 Visual Information Communication - International Symposium, (1-9)
- Rooke M, Grossman T and Fitzmaurice G AppMap Proceedings of Graphics Interface 2011, (111-118)
- Wettel R, Lanza M and Robbes R Software systems as cities Proceedings of the 33rd International Conference on Software Engineering, (551-560)
- Ashford J, Churcher N and Irwin W Dynamic visualisation of software state Proceedings of the Thirty-Fourth Australasian Computer Science Conference - Volume 113, (127-136)
- Müller C, Reina G, Burch M and Weiskopf D Subversion statistics sifter Proceedings of the 6th international conference on Advances in visual computing - Volume Part III, (447-457)
- Cooper S (2010). The Design of Alice, ACM Transactions on Computing Education, 10:4, (1-16), Online publication date: 1-Nov-2010.
- Shaffer C, Cooper M, Alon A, Akbar M, Stewart M, Ponce S and Edwards S (2010). Algorithm Visualization, ACM Transactions on Computing Education, 10:3, (1-22), Online publication date: 1-Aug-2010.
- Weyers B, Luther W and Baloian N Cooperative model reconstruction for cryptographic protocols using visual languages Proceedings of the 15th international conference on Groupware: design, implementation, and use, (311-318)
- Rößling G, Joy M, Moreno A, Radenski A, Malmi L, Kerren A, Naps T, Ross R, Clancy M, Korhonen A, Oechsle R and Iturbide J (2008). Enhancing learning management systems to better support computer science education, ACM SIGCSE Bulletin, 40:4, (142-166), Online publication date: 30-Nov-2008.
- Sorva J The same but different students' understandings of primitive and object variables Proceedings of the 8th International Conference on Computing Education Research, (5-15)
- Yeh R, Paepcke A and Klemmer S Iterative design and evaluation of an event architecture for pen-and-paper interfaces Proceedings of the 21st annual ACM symposium on User interface software and technology, (111-120)
- Furcy D, Naps T and Wentworth J (2008). Sorting out sorting, ACM SIGCSE Bulletin, 40:3, (174-178), Online publication date: 25-Aug-2008.
- Furcy D, Naps T and Wentworth J Sorting out sorting Proceedings of the 13th annual conference on Innovation and technology in computer science education, (174-178)
- Osawa N (2008). Jigsaw-Puzzle-Like 3D Glyphs for Visualization of Grammatical Constraints, IEICE - Transactions on Information and Systems, E91-D:6, (1804-1812), Online publication date: 1-Jun-2008.
- Happel H, Schuster T and Szulman P Leveraging Source Code Search for Reuse Proceedings of the 10th international conference on Software Reuse: High Confidence Software Reuse in Large Systems, (360-371)
- Erkan A, VanSlyke T and Scaffidi T (2007). Data structure visualization with latex and prefuse, ACM SIGCSE Bulletin, 39:3, (301-305), Online publication date: 25-Jun-2007.
- Erkan A, VanSlyke T and Scaffidi T Data structure visualization with latex and prefuse Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education, (301-305)
- Henthorne C and Tilevich E Code Generation on Steroids Proceedings of the Second International Workshop on Incorporating COTS Software into Software Systems: Tools and Techniques
- Rech J and Schäfer W (2007). Visual support of software engineers during development and maintenance, ACM SIGSOFT Software Engineering Notes, 32:2, (1-3), Online publication date: 1-Mar-2007.
- Anslow C, Marshall S, Noble J and Biddle R VET3D Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications, (655-656)
- Kerren A, Müldner T and Shakshuki E Novel algorithm explanation techniques for improving algorithm teaching Proceedings of the 2006 ACM symposium on Software visualization, (175-176)
- Demetrescu C and Finocchi I A data-driven graphical toolkit for software visualization Proceedings of the 2006 ACM symposium on Software visualization, (57-66)
- Lemieux F and Salois M Visualization Techniques for Program ComprehensionA Literature Review Proceedings of the 2006 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the fifth SoMeT_06, (22-47)
- Martin E and Xie T Understanding software application interfaces via string analysis Proceedings of the 28th international conference on Software engineering, (901-904)
- Hutton S and Sonnier D (2005). Super realistic and surrealistic visualizations in physics, math and computer science, Journal of Computing Sciences in Colleges, 20:6, (125-133), Online publication date: 1-Jun-2005.
- Diehl S Software visualization Proceedings of the 27th international conference on Software engineering, (718-719)
- Jain J, Cross J and Hendrix D Qualitative comparison of systems facilitating data structure visualization Proceedings of the 43rd annual Southeast regional conference - Volume 1, (309-314)
- Fleischer R and Trippen G On the effectiveness of visualizations in a theory of computing course Proceedings of the 2005 joint Chinese-German conference on Cognitive systems, (15-24)
- Orso A, Jones J, Harrold M and Stasko J Gammatella Proceedings of the 26th International Conference on Software Engineering, (699-700)
- Sonnier D and Hutton S Enhancing visual aids through the use of animation Proceedings of the 2nd annual conference on Mid-south college computing, (155-164)
- Demetrescu C and Finocchi I A portable virtual machine for program debugging and directing Proceedings of the 2004 ACM symposium on Applied computing, (1524-1530)
- Collberg C, Kobourov S and Westbrook S AlgoVista Proceedings of the 35th SIGCSE technical symposium on Computer science education, (462-466)
- Collberg C, Kobourov S and Westbrook S (2004). AlgoVista, ACM SIGCSE Bulletin, 36:1, (462-466), Online publication date: 1-Mar-2004.
- Vickers P and Alty J (2003). Siren songs and swan songs debugging with music, Communications of the ACM, 46:7, (86-93), Online publication date: 1-Jul-2003.
- Atanasova G and Hristova P Flow chart interpreter Proceedings of the 4th international conference conference on Computer systems and technologies: e-Learning, (453-458)
- Lintern R, Michaud J, Storey M and Wu X Plugging-in visualization Proceedings of the 2003 ACM symposium on Software visualization, (47-ff)
- Berthold M and Hand D References Intelligent data analysis, (475-500)
- Baecker R Showing instead of telling Proceedings of the 20th annual international conference on Computer documentation, (10-16)
- Martínez-Unanue R, Paredes-Velasco M, Pareja-Flores C, Urquiza-Fuentes J and Velázquez-Iturbide J (2002). Electronic books for programming education, ACM SIGCSE Bulletin, 34:3, (34-38), Online publication date: 1-Sep-2002.
- Martínez-Unanue R, Paredes-Velasco M, Pareja-Flores C, Urquiza-Fuentes J and Velázquez-Iturbide J Electronic books for programming education Proceedings of the 7th annual conference on Innovation and technology in computer science education, (34-38)
- Vetter J Dynamic statistical profiling of communication activity in distributed applications Proceedings of the 2002 ACM SIGMETRICS international conference on Measurement and modeling of computer systems, (240-250)
- Vetter J (2002). Dynamic statistical profiling of communication activity in distributed applications, ACM SIGMETRICS Performance Evaluation Review, 30:1, (240-250), Online publication date: 1-Jun-2002.
- Telea A, Maccari A and Riva C An open toolkit for prototyping reverse engineering visualizations Proceedings of the symposium on Data Visualisation 2002, (241-ff)
- Jones J, Harrold M and Stasko J Visualization of test information to assist fault localization Proceedings of the 24th International Conference on Software Engineering, (467-477)
- Eick S, Graves T, Karr A, Mockus A and Schuster P (2002). Visualizing Software Changes, IEEE Transactions on Software Engineering, 28:4, (396-412), Online publication date: 1-Apr-2002.
- Grinder M, Kim S, Lutey T, Ross R and Walsh K (2002). Loving to learn theory, ACM SIGCSE Bulletin, 34:1, (371-375), Online publication date: 1-Mar-2002.
- Dershem H, McFall R and Uti N (2002). Animation of Java linked lists, ACM SIGCSE Bulletin, 34:1, (53-57), Online publication date: 1-Mar-2002.
- Grinder M, Kim S, Lutey T, Ross R and Walsh K Loving to learn theory Proceedings of the 33rd SIGCSE technical symposium on Computer science education, (371-375)
- Dershem H, McFall R and Uti N Animation of Java linked lists Proceedings of the 33rd SIGCSE technical symposium on Computer science education, (53-57)
- Demetrescu C, Finocchi I, Italiano G and Näher S Visualization in algorithm engineering Experimental algorithmics, (24-50)
- Vetter J and McCracken M (2001). Statistical scalability analysis of communication operations in distributed applications, ACM SIGPLAN Notices, 36:7, (123-132), Online publication date: 1-Jul-2001.
- Vetter J and McCracken M Statistical scalability analysis of communication operations in distributed applications Proceedings of the eighth ACM SIGPLAN symposium on Principles and practices of parallel programming, (123-132)
- Mittermeir R, Bollin A, Pozewaunig H and Rauner-Reithmayer D Goal-driven combination of software comprehension approaches for component based development Proceedings of the 2001 symposium on Software reusability: putting software reuse in context, (95-102)
- Irwin W and Churcher N XML in the visualisation pipeline Proceedings of the Pan-Sydney area workshop on Visual information processing - Volume 11, (59-67)
- Mittermeir R, Bollin A, Pozewaunig H and Rauner-Reithmayer D (2001). Goal-driven combination of software comprehension approaches for component based development, ACM SIGSOFT Software Engineering Notes, 26:3, (95-102), Online publication date: 1-May-2001.
- Lieberman H and Fry C (2001). Will software ever work?, Communications of the ACM, 44:3, (122-124), Online publication date: 1-Mar-2001.
- Magee J, Kramer J, Nuseibeh B, Bush D and Sonander J Hybrid Model Visualization in Requirements and Design Proceedings of the 10th International Workshop on Software Specification and Design
- Baecker R, Booth K, Jovicic S, McGrenere J and Moore G Reducing the gap between what users know and what they need to know Proceedings on the 2000 conference on Universal Usability, (17-23)
- Sutinen E (2000). Future challenges in program visualization (panel session), ACM SIGCSE Bulletin, 32:3, (176-177), Online publication date: 1-Sep-2000.
- Sutinen E Future challenges in program visualization (panel session) Proceedings of the 5th annual SIGCSE/SIGCUE ITiCSEconference on Innovation and technology in computer science education, (176-177)
- Reiss S and Renieris M Generating Java trace data Proceedings of the ACM 2000 conference on Java Grande, (71-77)
- Magee J, Pryce N, Giannakopoulou D and Kramer J Graphical animation of behavior models Proceedings of the 22nd international conference on Software engineering, (499-508)
- Vetter J Performance analysis of distributed applications using automatic classification of communication inefficiencies Proceedings of the 14th international conference on Supercomputing, (245-254)
- Dossick S and Kaiser G (1999). CHIME, ACM SIGSOFT Software Engineering Notes, 24:6, (464-475), Online publication date: 1-Nov-1999.
- Dossick S and Kaiser G CHIME Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering, (464-475)
- Boroni C, Goosey F, Grinder M, Lambert J and Ross R Tying it all together The proceedings of the thirtieth SIGCSE technical symposium on Computer science education, (7-11)
- Boroni C, Goosey F, Grinder M, Lambert J and Ross R (1999). Tying it all together, ACM SIGCSE Bulletin, 31:1, (7-11), Online publication date: 1-Mar-1999.
- Bergin J, Naps T, Bland C, Hartley S, Holliday M, Lawhead P, Lewis J, McNally M, Nevison C, Ng C, Pothering G and Teräsvirta T Java resources for computer science instruction Working Group reports of the 3rd annual SIGCSE/SIGCUE ITiCSE conference on Integrating technology into computer science education, (14-34)
- Bergin J, Naps T, Bland C, Hartley S, Holliday M, Lawhead P, Lewis J, McNally M, Nevison C, Ng C, Pothering G and Teräsvirta T (1998). Java resources for computer science instruction, ACM SIGCUE Outlook, 26:4, (14-34), Online publication date: 1-Oct-1998.
- Baecker R, DiGiano C and Marcus A (1997). Software visualization for debugging, Communications of the ACM, 40:4, (44-54), Online publication date: 1-Apr-1997.
Recommendations
Software visualization
ICSE '05: Proceedings of the 27th international conference on Software engineeringThis half-day tutorial gives an overview of the current state-of-the-art in software visualization. Software visualization encompasses the development and evaluation of methods for graphically representing different aspects of software, including its ...
Validation of Software Visualization Tools: A Systematic Mapping Study
VISSOFT '14: Proceedings of the 2014 Second IEEE Working Conference on Software VisualizationSoftware visualization as a research field focuses on the visualization of the structure, behavior, and evolution of software. It studies techniques and methods for graphically representing these different aspects of software. Interest in software ...
Controlling Software Evolution Process Using Code Smell Visualization
ICCCV '19: Proceedings of the 2nd International Conference on Control and Computer VisionSoftware change is inevitable, evolution becomes a part of software lifetime, and software release becomes more frequent. Hence there is a need for the project manager to inspect and control the process during software development and evolution. In the ...