OOPSLA '04

Program
Technical Program
  Invited Speakers
  Technical Papers
  Onward!
  Panels
  Practitioner Reports
  Tutorials
Workshops
DesignFest
Educators' Symposium
Demonstrations
Posters
Doctoral Symposium
Exhibits
Student Research Comp.
FlashBoF
 
Turing Lecture
 
Social Events
 
Week at a Glance
 
Final Program (1.5M .pdf)

Find in Program
 

Page
Printer-friendly

Basket
view, help

"Interactive Visualization of Object-Oriented Programs"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps
 
  > Doctoral Symposium

Interactive Visualization of Object-Oriented Programs

Paul Gestwicki, University at Buffalo

This research is motivated by the need to obtain better comprehension of the execution of object-oriented programs. We describe a novel approach to runtime visualization of object-oriented programs. We focus specifically on Java since it has been widely adopted by industry and academia. Our visualization methodology features:

  1. visualizations of execution state using a custom notation that clarifies the important fact that objects are environments of execution;
  2. visualizations of program history using dynamically-generated, interactive sequence diagrams;
  3. forward and reverse execution;
  4. support for visual queries regarding object, variable, and method behavior during program execution, the results of which are integrated into the object and sequence diagrams;
  5. advanced drawing capabilities driven by a combination of source code and runtime analysis; and
  6. the use of standard Java compilers and virtual machines.

Our approach is realized in a prototypical software tool, JIVE: Java Interactive Visualization Environment. JIVE is useful as a pedagogic tool and as a visual debugger, and its notations provide a visual operational semantics for Java.

KEYWORDS: program visualization, object-oriented programming, object and sequence diagrams, interactive reverse execution, Java