Abstract : Our goal is to provide a debugging assistance for parallel and distributed applications based on persistent objects which allows cyclical debugging and offers a high level of abstraction for the observation of an execution. The nondeterminism and the probe effect of this kind of execution make bugs caused by race conditions difficult to correct. The limitations of both static analysis and dynamic approaches based on a current execution justify the choice of a debugging methodology based on replay, which solves the problem of nondeterminism by recording an execution. In this case the behavior of an incorrect execution is well known and can be visualised in specific views according to the particularities of the execution environment. In the context of object-oriented systems, we define a debugging record/replay (control driven) system based on the objects which allows cyclical debugging and object execution observation. The reexecution and the observation services are designed and integrated in a modular architecture. These concepts have been applied to the Guide system. A reexecuting kernel has been implemented using Guide objects, which automatically records and replays an execution.