Authors: Stuart Marshall, Robert Biddle, Ewan Tempero
Source: GZipped PostScript (323kb); Adobe PDF (422kb)
Many aspects of program development and understanding involve the dynamic behaviour of the program. In order to develop or use program components, it is often important to experience the dynamic aspects of the components, whether for testing, debugging, or familiarisation. For example, it might be useful to facilitate testing of components by creating objects, and then calling methods, specifying parameters by filling in a form. Understanding of dynamic behaviour might be supported by automatic creation of diagrams tracing program execution through different components, or by automatic connection of the code to a program visualisation system. This paper reports on our exploration of how this approach can be supported using Java, the Java Reflection API, and the Java Virtual Machine Debugger Interface.