Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
This semester project report describes a prototype tracing tool that records the behavior of a Java program during its execution. It explains the two methods that were attempted to implement the tool, one using the Java debug interface, which gave poor results, the other using JVM bytecode instrumentation, which gave much better results. The tracer is able to record which lines are visited during the execution, what values the variables and fields have before and after the execution of each line and what values are given as arguments to functions or returned by them. We also describe a GUI to visualize the data collected during the execution.
Denis Gillet, Christophe Salzmann, Evgeny Bogdanov