Presentation is loading. Please wait.

Presentation is loading. Please wait.

SmartThings의 SmartApp을 위한 페이지 구조 시각화 도구

Similar presentations


Presentation on theme: "SmartThings의 SmartApp을 위한 페이지 구조 시각화 도구"— Presentation transcript:

1 SmartThings의 SmartApp을 위한 페이지 구조 시각화 도구
Visualization tool for page structure of SmartThings Applications Sookmyung Women's University Software Language Lab Bak Nayeon

2 Content 연구 개요 SmartThings 소개 시각화 도구(Visualization tool) 개발 향후 연구

3 연구 개요 SmartApp의 페이지 구조 시각화 도구 개발 효과적인 SmartApp 개발을 지원하는 도구 시각화

4 SmartThings 소개 SmartDevice와 SmartApp을 관리, 개발하는 개방형 사물인터넷 플랫폼
스마트싱스에 SmartApp을 등록하면 연결된 SmartDevice로 서비스를 제공한다.

5 SmartThings 소개 개방형 사물인터넷 플랫폼. Smart App Smart Devices SmartThings Hub
사용자에게 서비스를 제공 센서를 통해 이벤트를 인식 SmartDevices의 기능을 이용하여 자동화 서비스를 제공하는 앱 스마트싱스와 SmartDevice를 연결

6 SmartThings 구조

7 SmartApp 예제 : Left it open
Definition Preferences Predefined Callbacks Event Handlers

8 SmartApp Definition 어플리케이션을 식별하고 설명하는 여러 정보(아이콘, 이름)를 기술하는 부분

9 SmartApp Preferences 자동화 서비스를 제공하기 위해 필요한 input 디바이스의 기능과 여러 정보들을 정의
page, section, input등으로 구성

10 Preferences page section input 한 개의 page가 한 개의 화면을 정의
종류 : normal page, dynamic page section input 등 SmartApp의 입력 요소들로 구성 사용자의 직관적인 SmartApp 설정을 지원 input input의 이름과 디바이스의 기능을 지정 특정 디바이스나 변수를 정의

11 Preferences normal page vs dynamic page

12 SmartApp Predefined Callbacks 어플리케이션의 설치, 갱신, 삭제를 지원하는 함수 호출

13 Predefined Callbacks subscribe
특정 디바이스의 어떤 이벤트가 일어 났을 때 명시된 이벤트 핸들러 함수 호출 input device device의 기능 이벤트 핸들러 함수

14 SmartApp Event Handlers 어플리케이션을 구성하는데 필요한 이벤트 핸들러 함수 정의
dynamic page를 정의하는 함수 정의 관련된 다른 함수 정의

15 시각화 도구 개발 시각화 도구의 기능 시각화 도구의 모델 시각화 도구의 시스템 구조 구현 결과
SmartApp의 페이지 구조를 트리의 형태로 시각화 한다. SmartApp의 subscribe함수의 오류를 검출한다. 시각화 도구의 모델 시각화 도구의 시스템 구조 구현 결과

16 capability.contactSensor
시각화 도구 모델 모델 preferences normal page section input ”contact” capability.contactSensor doorOpenHandler contact.open input ”switchf” capability.switch dynamic page input “textMessage” text input “phone” phone

17 시각화 도구 구조 시스템 구조 AST Parsing Collecting data visualization 자료 수집 모듈
SmartApp의 AST를 순회하며 시각화에 필요한 자료 수집 시각화 모듈 수집 한 자료를 기반으로 SmartApp의 페이지 구조를 트리의 형태로 시각화

18 자료 수집 모듈 첫번째 순회(traverse) … preference의 정보와 subscribe함수들의 정보를 수집
dynamic page의 존재 여부를 확인 preference subscribe SmartApp code SmartApp AST

19 자료 수집 모듈 두번째 순회(traverse) … dynamicPage 존재한다면 두번째 순회 시작
preference subscribe SmartApp code dynamic page SmartApp AST

20 시각화 모듈 preference subscribe dynamicPage Information

21 구현 결과 : 시각화 도구

22 구현 결과 : 환경 설정 시각화 도구 환경 설정

23 구현 결과 : 환경 설정 dynamic page를 나타내지 않음

24 정상 에러 구현 결과 : 오류 검출 subscribe 오류 검출 정의되지 않은 input 지원되지않은 capability
정의되지 않은 handler 정상 에러

25 구현 결과 : 오류 검출 subscribe 오류 검출 ① ①③ ② ③ 정의되지 않은 input 지원되지않은 capability
정의되지 않은 handler ①③

26 구현 결과 :오류 검출 subscribe 오류 검출 ①③

27 향후 연구 오류 검출 dynamic page 정의 Conflict 검출 Automated Code Generation
SmartApp의 등록된 SmartDevice사이에 일어날 수 있는 Semantic Conflict Automated Code Generation 일반 사용자도 쉽게 SmartApp을 개발할 수 있는 도구 연구

28 QnA Sookmyung Women's University Software Language Lab Bak Nayeon

29 Thanks for listening :D
Sookmyung Women's University Software Language Lab Bak Nayeon


Download ppt "SmartThings의 SmartApp을 위한 페이지 구조 시각화 도구"

Similar presentations


Ads by Google