— The increasing complexity of distributed enterprise systems has made the task of managing these systems difficult and time consuming. The only way to simplify the management process is to automate much of the work so that minimum human effort could be invested. This has lead to research in self-manging or autonomic systems that are self-healing, self-confguring, selfprotecting and self-managing. We believe that the starting point of any autonomic system is to understand the dependencies between various components of the system and use it to perform higher order management tasks. As a proof of concept, we are trying to build self-healing capabilites into distributed enterprise applications by modelling the failure dependencies within the system. In a complex distributed environment, failures tend to propagate from one part of the system to the other. Hence, the failure symptoms may be observed at a point far removed from the actual cause of these failures. Therefore, localizing obs...