최근 주목 받고 있는 정보기술분야 중 하나인 IoT(Internet of Things) 환경은 센서와 액츄에이터로 구성된 다양한 디바이스들이 네트워크에 연결되어 정보를 수집 및 공유하면서 상호작용이 가능한 컴퓨팅 환경이다. 하드웨어, 네트워크 기술의 발전으로 인한 IoT 디바이스의 보편화와 IoT 서비스에 대한 사회적인 요구의 증가에 따라, IoT 애플리케이션의 사용성이 증대될 것으로 기대하고 있다. 그러나 IoT 환경에서는 전통적인 소프트웨어 연구에서 다루어지지 않았던 다양한 종류의 결함이 발생할 수 있어, 신뢰성 있는 IoT 애플리케이션을 개발하는 데에 어려움이 있다. 이러한 문제를 해결하기 위하여, 본 논문에서는 IoT 결함을 분류하고, 분류된 결함들의 원인과 증상을 분석한다. 그리고 분석 결과를 기반으로 서비스 실행 시에 발생 할 수 있는 결함을 관리하기 위한 프로세스와 그 프로세스 안에서 수행되는 기법을 제안한다. 본 연구에서 제안하는 프로세스와 관리 기법을 활용하여 결함 관리가 필요한 IoT 애플리케이션의 개발 비용을 줄일 수 있다.
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.