17th IEEE International Conference on Automated Software Engineering (ASE'02)
No Java without Caffeine: A Tool for Dynamic Analysis of Java Programs
Edinburgh, UK
September 23-September 27
ISBN: 0-7695-1736-6
To understand the behavior of a program, a maintainer reads some code, asks a question about this code, conjectures an answer, and searches the code and the documentation for confirmation of her conjecture. However, the confirmation of the conjecture can be error-prone and time-consuming because the maintainer has only static information at her disposal. She would benefit from dynamic information. In this paper, we present Caffeine , an assistant that helps the maintainer in checking her conjecture about the behavior of a Java program. Our assistant is a dynamic analysis tool that uses the Java platform debug architecture to generate a trace, i.e., an execution history, and a Prolog engine to perform queries over the trace. We present a usage scenario based on the n-queens problem, and two real-life examples based on the Singleton design pattern and on the composition relationship.
Citation:
Yann-Gaël Guéhéneuc, Rémi Douence, Narendra Jussien, "No Java without Caffeine: A Tool for Dynamic Analysis of Java Programs," ase, pp.117, 17th IEEE International Conference on Automated Software Engineering (ASE'02), 2002