SMALLTALK-80: the interactive programming environment
SMALLTALK-80: the interactive programming environment
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
A framework for dynamic graph drawing
SCG '92 Proceedings of the eighth annual symposium on Computational geometry
Debugging with dynamic slicing and backtracking
Software—Practice & Experience
Visualizing the behavior of object-oriented systems
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Toward visual debugging: integrating algorithm animation capabilities within a source-level debugger
ACM Transactions on Computer-Human Interaction (TOCHI)
DYNALAB: a dynamic computer science laboratory infrastructure featuring program animation (abstract)
SIGCSE '95 Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education
DDD—a free graphical front-end for UNIX debuggers
ACM SIGPLAN Notices
An interactive constraint-based system for drawing graphs
Proceedings of the 10th annual ACM symposium on User interface software and technology
Call graph construction in object-oriented languages
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Visualizing dynamic software system information through high-level models
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Unified Modeling Language user guide
The Unified Modeling Language user guide
Communications of the ACM
Slicing object-oriented java programs
ACM SIGPLAN Notices
Guidelines for teaching object orientation with Java
Proceedings of the 6th annual conference on Innovation and technology in computer science education
PASTE '01 Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Java Language Specification, Second Edition: The Java Series
Java Language Specification, Second Edition: The Java Series
IEEE Software
Understanding Object-Oriented Programs through Declaratice Event Analysis
ECOOP '98 Workshop ion on Object-Oriented Technology
GD '95 Proceedings of the Symposium on Graph Drawing
Proceedings of the 2003 ACM symposium on Software visualization
Interactive Visualization of Java Programs
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
VL '96 Proceedings of the 1996 IEEE Symposium on Visual Languages
Recovering High-Level Views of Object-Oriented Applications from Static and Dynamic Information
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
An extensible framework for providing dynamic data structure visualizations in a lightweight IDE
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Snapshot Query-Based Debugging
ASWEC '04 Proceedings of the 2004 Australian Software Engineering Conference
MVT: a system for visual testing of software
Proceedings of the working conference on Advanced visual interfaces
JIVE: java interactive visualization environment
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
The contour model of block structured processes
ACM SIGPLAN Notices
Visualizing errors in object oriented programs
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Analyzing feature implementation by visual exploration of architecturally-embedded call-graphs
Proceedings of the 2006 international workshop on Dynamic systems analysis
A data-driven graphical toolkit for software visualization
SoftVis '06 Proceedings of the 2006 ACM symposium on Software visualization
Visualizing program execution using user abstractions
SoftVis '06 Proceedings of the 2006 ACM symposium on Software visualization
Computer games as motivation for design patterns
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Declarative and visual debugging in Eclipse
Proceedings of the 2007 OOPSLA workshop on eclipse technology eXchange
Teaching Design Patterns Through Computer Game Development
Journal on Educational Resources in Computing (JERIC)
Rationale Behind the Design of the EduVisor Software Visualization Component
Electronic Notes in Theoretical Computer Science (ENTCS)
Gaining insight into programs that analyze programs: by visualizing the analyzed program
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
Proceedings of the 41st ACM technical symposium on Computer science education
Jype - a program visualization and programming exercise tool for Python
Proceedings of the 5th international symposium on Software visualization
Ji.Fi: visual test and debug queries for hard real-time
Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems
A Review of Generic Program Visualization Systems for Introductory Programming Education
ACM Transactions on Computing Education (TOCE)
Hi-index | 0.00 |
A novel approach to the runtime visualization and analysis of object-oriented programs is presented and illustrated through a prototype system called JIVE: Java Interactive Visualization Environment. The main contributions of JIVE are: multiple concurrent representations of program state and execution history; support for forward and reverse execution; and graphical queries over program execution. This model facilitates program understanding and interactive debugging. Our visualization of runtime states clarifies the important point that objects are environments of execution. The history of object interaction is displayed via sequence diagrams, and in this way we help close the loop between design-time and run-time representations. Interactive execution is made possible by maintaining a runtime history database, which may be queried for information on variable behavior, method executions, and object interactions. We illustrate the capabilities of this system through examples. JIVE is implemented using the Java Platform Debugger Architecture and supports the Java language and libraries, including multithreaded and GUI applications.