Internet of Thing (IoT) computing is an environment where various devices with sensors and actuators are connect, and interact together to acquire contexts and provide useful services. With the advances of IoT technologies, its usability becomes an in important issue. However, there exist various types of faults in IoT computing which are not conventionally addressed in software research community. Providing reliable IoT services is challenging. In this paper, we present a hierarchy of IoT faults and analyze causes and symptoms of the faults. Based on the analysis, we define effective methods for managing IoT faults. We believe that our proposed framework for managing IoT faults can be utilized in reducing the development cost of IoT applications and enhancing the quality of the applications.