$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

사물인터넷 서비스의 신뢰성 강화를 위한 오류 추적 시스템 설계
A Design on Error Tracking System for Enhanced-Reliable IoT Service 원문보기

한국사물인터넷학회 논문지 = Journal of the Korea Internet of Things Society, v.6 no.3, 2020년, pp.15 - 20  

임호성 ((주)네이버) ,  최창원 (한신대학교 컴퓨터공학부)

초록
AI-Helper 아이콘AI-Helper

본 논문에서는 사물인터넷 서비스 개발 과정에서 발생할 수 있는 오류에 대한 분석 및 추적, 알림 시스템을 설계하였다. 오류에 대한 세부적인 부가정보(OS, Browser, Device)들을 체계적으로 분석하고 오류가 발생한 상황을 개발자가 인지하도록 하여 시스템의 신뢰성을 강화하였다. 특히 서비스 내에서 오류가 발생한 경우 개발자가 이를 인지하기 어려운 상황을 고려하여 다양한 알림 매체(Email, Slack, SMS)를 통해서 인지할 수 있도록 하였다. 설계 및 개발과정에서 사물인터넷 환경의 특성 상 여러 언어(Typescript, Swift, Android)에 대해 수용할 수 있도록 공용 인터페이스를 고안했으며, 이 인터페이스를 활용하여 모바일, 웹, 데스크톱 어플리케이션 등 여러 사물인터넷 시스템에서 발생한 오류를 수용해서 분석할 수 있다. 또한 각각의 오류 이슈를 통해 집합으로 표현함으로써 개발자가 서비스 개발 시 어떤 이슈가 있는지 쉽게 파악할 수 있으며 대시보드를 통해서 발생한 오류들을 인지할 수 있는 시각화 기능을 제공하였다.

Abstract AI-Helper 아이콘AI-Helper

In this paper, an error tracking platform is designed for enhanced-reliable IOT system. The platform is designed to enhance reliability of IOT system by analysing additional informations(OS, Browser, Device) and by notifying error detection to developers. Especially, in the case of an error in the s...

주제어

표/그림 (15)

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

제안 방법

  • 3) 이슈 관리 기능을 추가하여 gitHub나 Trello와 연동하여 체계적인 오류 관리를 가능케 하였다.
  • 5) 오류 로그를 텍스트 형식으로 형식화하였다.
  • DB는 효율적인 오류 추적이 가능하도록 [Table 1]처럼 User, Comment, Tag, Team, Project, Activity, Error 등 [Fig. 3]처럼 7개의 엔티티로 구성하여 설계하였다[13].
  • 시스템 설계에 사용하는 클래스는 Email, Slack, SMS, Notification 등 4 개의 클래스로 정의하였다. Notification 클래스는 다른 Notify Media가 추가되더라도 이전 모듈에 영향을 주지 않고 쉽게 추가할 수 있도록 클래스를 상속받은 서브 클래스로 설계하였다. [Fig.
  • 또한 전체 스택 추적뿐 아니라 오류가 발생한 시점의 기기 특성, 성능 데이터, 사용자 상황에 대한 정보를 제공한다. 그리고 가장 최근의 오류를 보여주어 여러 프로젝트를 개발할 때 설정/구성이 편리해지며 검색 기능을 추가하여 특정 시간, 특정 오류 메시지로 범위를 좁혀가면서 원하는 검색을 할 수 있게 하였다.
  • 본 논문에서 설계한 시스템은 특정오류 형태나 브라우저를 활용한 키워드 필터링을 제공하여 알림을 받을 수 있게 하여 간단한 오류로 유발되는 메일 범람을 방지하였다. 또한 전체 스택 추적뿐 아니라 오류가 발생한 시점의 기기 특성, 성능 데이터, 사용자 상황에 대한 정보를 제공한다. 그리고 가장 최근의 오류를 보여주어 여러 프로젝트를 개발할 때 설정/구성이 편리해지며 검색 기능을 추가하여 특정 시간, 특정 오류 메시지로 범위를 좁혀가면서 원하는 검색을 할 수 있게 하였다.
  • 14]처럼 어떤 프로젝트에서 발생한 오류인지 구별해주고, 해당 기기의 IP 주소와 발생 시간을 출력한다. 또한 특정 키워드로 검색할 수 있는 기능을 제공하여 오류에 대한 정확한 정보를 제공한다.
  • 7]처럼 개발자가 Application SDK를 설치하고 개발 작업 도중 오류가 발생하게 되면 오류 정보들이 API Server로 전달되고, 그 오류 정보들을 Error Notify Media로 가공해서 전달하게 된다. 모든 객체간의 상호작용은 http Request, http Respone 형식으로 동작되도록 설계하였다.
  • 본 논문에서 설계한 시스템은 특정오류 형태나 브라우저를 활용한 키워드 필터링을 제공하여 알림을 받을 수 있게 하여 간단한 오류로 유발되는 메일 범람을 방지하였다. 또한 전체 스택 추적뿐 아니라 오류가 발생한 시점의 기기 특성, 성능 데이터, 사용자 상황에 대한 정보를 제공한다.
  • 본 논문에서는 사물인터넷 서비스를 개발하고 운영하면서 발생하는 오류들의 다양한 정보들을(OS, Browser, Device)를 분석하여 오류가 발생하는 상황을 개발자가 그대로 재현할 수 있는 기능을 제공해주고, 오류 발생 시 개발자가 바로 인식할 수 있도록 여러 알림매체(Email, Slack, SMS)를 통해서 알림 서비스를 제공하는 오류 추적 시스템을 설계하고 개발하였다. 제안된 시스템은 서비스를 개발하고 운영하는데 있어 필연적으로 발생할 수밖에 없는 오류를 하나의 관리대상으로 정의하여 분석, 알림 서비스를 개발자들에게 제공함으로써 시스템의 신뢰성을 강화할 수 있다.
  • 본 논문에서는 사물인터넷 환경의 시스템 개발자가 어떠한 프로젝트를 진행할 때 발견되는 오류들을 다양한 형태로 인식하여 신속히 대처하고 다른 팀원들과 대시보드를 이용하여 오류에 대한 피드백을 쉽게 하여 전체 프로젝트의 완성도를 높이고 비용을 줄일 수 있는 플랫폼을 설계하였다.
  • 사용자 인터페이스는 원활한 UI를 구현하기 위해 storybook.js를 사용하였고 디자인 측면을 고려하여 Material-UI를 사용하였다. 사용자 가입은 github과 연동하여 로그인을 할 수 있게 하였고 저장된 아이디로 로그인 할 수 있다.
  • 오류 수집에는 다양한 언어(Typescript, Swift, Android)로 개발된 시스템에서 발생하는 오류들을 모두 수용할 수 있도록 공용 인터페이스를 설계하고 활용하였다. 이 인터페이스에 맞게 오류 정보를 설계된 시스템에 전달하면 이를 분석하고 개발자의 요구에 맞도록 가공할 수 있다.
  • 오류에 대한 수정/보완 작업을 수행하기 위해서 각 이슈별로 상세 페이지를 [Fig. 13]처럼 제공하였다. 이 기능은 발생한 오류가 어떤 환경(browser, os, language)에서 발생한 것인지를 시각화하여 아이콘 형태로 출력하는 부분과 error capture 내용, 발생한 error에 대한 시각적 그래프로 구성하였다.
  • 오류에 대한 전체적인 통계를 출력하도록 대시보드 기능([Fig. 9])을 제공하였으며 오류를 시간별로 보여주는 그래프(상단)와 오류에 대한 환경(IE, Chrome, Firefox 등)에 대해 출력하는 파이 차트(하단), 그리고 최근에 발생한 오류에 대해 테이블 형식으로 출력한다.
  • 13]처럼 제공하였다. 이 기능은 발생한 오류가 어떤 환경(browser, os, language)에서 발생한 것인지를 시각화하여 아이콘 형태로 출력하는 부분과 error capture 내용, 발생한 error에 대한 시각적 그래프로 구성하였다.

대상 데이터

  • 시스템 설계에 사용하는 클래스는 Email, Slack, SMS, Notification 등 4 개의 클래스로 정의하였다. Notification 클래스는 다른 Notify Media가 추가되더라도 이전 모듈에 영향을 주지 않고 쉽게 추가할 수 있도록 클래스를 상속받은 서브 클래스로 설계하였다.
본문요약 정보가 도움이 되었나요?

참고문헌 (15)

  1. H.Kim, Internet of Things(Concepts, Implementation and Business), Hongrung Publishing, 2018. 

  2. C.Lee and C.Choi, "A Simple Cost Analysis of Host ID-LOC Separating protocol using SDN Features," JKIOTS, Vol.2, No.4, pp.41-47, 2016. 

  3. K.Lee, "A Design on Learning Model using Triz on Project-based Learning in IOT," JKIOTS, Vol.5, No.3, pp.29-35, 2019. 

  4. S.Lee, "An Analysis of Software Development Process Based on Software Engineering in IOT Environment," JKIOTS, Vol.6. No.1, pp.25-31, 2020. 

  5. A.Montazerolghaem and M.Yaghmaee, "Load-balanced and QoS-aware Software-defined Internet of Things," IEEE Internet of Things Journal, DOI 10.1109/JIOT2020.2967081, 2020. 

  6. https://www.opennetworking.org 

  7. JavaScript(https://ko.wikipedia.org/wiki/JavaScript) 

  8. TypeScript(https://ko.wikipedia.org/wiki/TypeScript) 

  9. React.js(https://ko.wikipedia.org/wiki/React.js ) 

  10. Node.js(https://ko.wikipedia.org/wiki/Node.js) 

  11. JSX(https://ko.wikipedia.org/wiki/React.js) 

  12. GraphQL(https://ko.wikipedia.org/wiki/GraphQL) 

  13. MariaDB(https://ko.wikipedia.org/wiki/MariaDB) 

  14. Docker(https://ko.wikipedia.org/wiki/Docker) 

  15. Git(https://ko.wikipedia.org/wiki/git) 

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로