Result: No Java without Caffeine ― A tool for dynamic analysis of Java programs

Title:
No Java without Caffeine ― A tool for dynamic analysis of Java programs
Contributors:
Mines Nantes (Mines Nantes), Aspect and composition languages (ASCOLA), Laboratoire d'Informatique de Nantes Atlantique (LINA), Mines Nantes (Mines Nantes)-Université de Nantes - UFR des Sciences et des Techniques (UN UFR ST), Université de Nantes (UN)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS)-Mines Nantes (Mines Nantes)-Université de Nantes - UFR des Sciences et des Techniques (UN UFR ST), Université de Nantes (UN)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS)-Département informatique - EMN, Mines Nantes (Mines Nantes)-Centre Inria de l'Université de Rennes, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Theory, Algorithms and Systems for Constraints (TASC)
Source:
ASE'02: 17th IEEE conference on Automated Software Engineering. :117-126
Publisher Information:
CCSD; IEEE Computer Society Press, 2002.
Publication Year:
2002
Collection:
collection:UNIV-NANTES
collection:MINES-NANTES
collection:CNRS
collection:INRIA
collection:INRIA-RENNES
collection:LINA
collection:LINA-ASCOLA
collection:INRIA_TEST
collection:TESTALAIN1
collection:INFO
collection:INRIA2
collection:LS2N
collection:LS2N-TASC-IMTA
collection:IMTA_DAPI
collection:LS2N-IMTA
collection:INRIA-RENGRE
collection:IMT-ATLANTIQUE
collection:NANTES-UNIVERSITE
collection:UNIV-NANTES-AV2022
collection:INSTITUT-MINES-TELECOM
Subject Geographic:
Original Identifier:
HAL: hal-00869117
Document Type:
Conference conferenceObject<br />Conference papers
Language:
English
Relation:
info:eu-repo/semantics/altIdentifier/doi/10.1109/ASE.2002.1115000
DOI:
10.1109/ASE.2002.1115000
Accession Number:
edshal.hal.00869117v1
Database:
HAL

Further Information

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.