AbstractUnlike object-oriented applications it is difficult to address exceptions in multi-agent systems due to their highly dynamic and autonomous nature. Our previous work has examined exception diagnosis in multi-agent systems based on a heuristic classification method. In this paper, we extend our work by applying an exception diagnosis method to web services (WS) by proposing a unified framework for dealing with exceptions occurring in multi-agent systems as well as in web services. Importantly, we relate the impact of exceptions to Quality of Service (QoS), as exceptions normally degrade the quality of service offered to a service consumer. Our framework consists of a QoS monitoring agent that monitors all interactions taking place between service consumers and service providers. The monitoring agent encodes the knowledge of exceptions, their causes and applies the heuristic classification method for reasoning in order to diagnose underlying causes of monitored exceptions. In this paper, we categorize exceptions into three levels in multi-agent systems: Environment Level Exception; Knowledge Level Exception and Social Level Exception. This paper also discusses different classes of exceptions in web services based on the web service stack.