Difference between revisions of "Capture and replay"

Line 9: Line 9:
  
 
*The overhead of capture/replay should be measured to see if it could be used in practice.
 
*The overhead of capture/replay should be measured to see if it could be used in practice.
 +
 +
==Plan==
 +
The project will be divided into several iterations to be able to work with both capture and replay as fast as possible.
 +
 +
===iteration 0===
 +
*Basic Capture
 +
*Basic Replay
 +
 +
===iteration 1===
 +
*Fields
 +
*Expanded Types
 +
*Contracts
 +
 +
===iteration 2===
 +
*Polymorphism
 +
*Genericity
 +
*Onces
 +
 +
===iteration 3===
 +
*Agents
 +
*Tuples
 +
*Externals
 +
 +
[[Image:Schedule 2007-03-27.png|800px]]
  
 
==References==
 
==References==
 
[1] Shrinivas Joshi and Alessandro Orso: Capture and Replay of User Executions to Improve Software Quality
 
[1] Shrinivas Joshi and Alessandro Orso: Capture and Replay of User Executions to Improve Software Quality
[[Image:Schedule 2007-03-27.png]]
 

Revision as of 00:17, 27 March 2007

This is the project page for capture & replay debugging

Overview

Capture/Replay should be implemented according to [1]:

  • After defining the set of observed classes, an instrumented executable should be generated, that records all interactions between observed and unobserved objects.
  • For the replay phase, unobserved classes are replaced with stubs that replay their with the observed classes based on the recorded interactions. Thus it should be possible to replay a run for the set of observed classes.
  • Capture/Replay should at least be available for the Workbench (Frozen) C Code. The implementation for melted code is optional. It can't be avoided that parts of the work will depend on the compiler backend that is used. These dependencies should be isolated into separate classes and kept as small as possible.
  • The overhead of capture/replay should be measured to see if it could be used in practice.

Plan

The project will be divided into several iterations to be able to work with both capture and replay as fast as possible.

iteration 0

  • Basic Capture
  • Basic Replay

iteration 1

  • Fields
  • Expanded Types
  • Contracts

iteration 2

  • Polymorphism
  • Genericity
  • Onces

iteration 3

  • Agents
  • Tuples
  • Externals

Schedule 2007-03-27.png

References

[1] Shrinivas Joshi and Alessandro Orso: Capture and Replay of User Executions to Improve Software Quality