Abstract
Internet-of-Things(IoT) is the computing paradigm converged with different technologies, where diverse devices are connected via the wireless network, acquire environmental information from their equipped sensors, and actuated. IoT applications typically provide smart services to users by interacting with multiple devices connected to the network and are designed by integrating multiple technologies such as sensor network, communication technologies, and software engineering. Moreover, since the concept of IoT has been introduced recently, most of the researches are in the beginning step, which is too early to be practically applied. Due to these facts, developing IoT application results in unconventional technical challenges which have not been observed in typical software applications. And, it is not straightforward to apply conventional project guidelines to IoT application development projects. Hence, there can be many difficulties to successfully complete the projects. Therefore, for successful completion of the projects, we analyze technical challenges occurring in all phases of the project lifecycle, i.e. project preparation stage and development stage. And, we propose the effective solutions to overcome the issues. To verify identified issues and presented solutions, we present the result of applying the solutions to an IoT application development. Through the case study, we evaluate how reasonable the unconventional technical issues are generated and analyze effectiveness of applying the solutions to the application.
사물 인터넷(Internet-of-Things, IoT) 컴퓨팅은 무선 인터넷으로 다양한 디바이스를 연결하고 센서를 통해 획득한 사용자 주변 환경 정보를 이용하여 디바이스를 제어하는 여러 기술의 융합 기술이다. IoT 애플리케이션은 기존 소프트웨어와는 달리 다수 개의 IoT 디바이스와 협업을 통해 사용자에게 기능을 제공하고, 센서 네트워크, 통신 기술, 소프트웨어 공학 등 여러 기술들을 활용하여 설계된다. 그리고 최근에 소개된 신기술이기 때문에, 대부분의 연구는 시작 단계에 있다. 이런 이유로, IoT 애플리케이션 개발 프로젝트는 기존의 소프트웨어 개발 프로젝트에서 관찰되지 않은 기술적 이슈들이 발생할 수 있고, 기존의 프로젝트 수행 가이드라인을 그대로 적용하는 것이 제한되어 성공적으로 프로젝트를 수행하는 데 어려움이 따른다. 따라서 본 논문에서는 IoT 애플리케이션을 효율적으로 개발하기 위해, 프로젝트 준비 및 계획 단계와 설계 및 개발 단계로 구분하여 각 단계별로 기술적 이슈를 나열하고 효과적인 솔루션을 제시하고자 한다. 또한 IoT 디바이스 중 AR.Drone과 Sphero Ball을 활용한 애플리케이션 개발에서 본 논문의 솔루션에 대한 적용 및 활용 사례를 보여줌으로써, 연구의 실효성을 검증한다.