A model and a methodology for distributed debugging