EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
RAD스튜디오로
사물 인터넷(IoT) 구현하기
DeepDive!
2015년
 03월
 03일
 
EMBARCADERO	
  TECHNOLOGIES	
  
발표자	
  
•  김현수(Humphery	
  Kim)	
  
•  데브기어 델파이 에반젤리스트	
  
•  데브기어 테크사이트 :	
  
h/p://tech.devgear.co.kr/	
  
•  블로그 :	
  h/p://blog.hjf.pe.kr/	
  
•  Facebook	
  :	
  h/p://?.com/hjfactory	
  
•  hskim@embarcadero.kr	
  
EMBARCADERO	
  TECHNOLOGIES	
  
Agenda	
  
•  엠바카데로 (솔루션과 전략)
•  사물인터넷(IoT) 앱 개발
•  연결된 앱 (Connected Apps) 그리고 모든 것에 연결
•  엔터프라이즈 기업을 위한 사물인터넷(IoT)
•  헬스캐어 시나리오 구현
•  데모로 살펴보는 사물인터넷 기술
EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
엠바카데로 Embarcadero
솔루션과 전략
EMBARCADERO	
  TECHNOLOGIES	
  
5	
  
Founded 1993
3.2 Million Customers
500+ Employees in 29 Countries
5 RD Centers of Excellence
World Wide Sales  Support
Embarcadero Technologies
EMBARCADERO	
  TECHNOLOGIES	
  
수백만의 Delphi/C++ 개발자는 코딩 중…
•  연간 97 억 줄
•  10만 윈도우 애플리케이션
•  80% 적은 코드 – 1 줄당 1,700원
•  68조원을 개발자가 연간 절감
•  이제, 사물인터넷으로 확장
EMBARCADERO	
  TECHNOLOGIES	
  
멀티-­‐디바이스 순수 네이티브	
  
Apple	
  
Google	
  
Microso	
  
HTML5	
  
Appcelerator	
  
Kony	
  
	
  
단일	
  
디바이스	
  
멀티	
  
디바이스	
  
스크립트	
  순수 네이티브	
  
멀티-­‐디바이스	
  
순수 네이티브	
  
Embarcadero	
  
찬성	
  
네이티브 사용자경험
(UX)	
  
네이티브 성능	
  
보안성	
  
찬성	
  
단일 팀	
  
개발 비용이 더 작음	
  
신속한 시장 진출	
  
	
  
EMBARCADERO	
  TECHNOLOGIES	
  
$
Future
델파이 or C++
FM 앱 프레임워크
단일 팀,	
  단일 코드베이스	
  
단일 팀	
  
단일 코드베이스	
  
RAD	
  스튜디오로 멀티-­‐디바이스를 실현	
  
EMBARCADERO	
  TECHNOLOGIES	
  
Embarcadero,
XCode
Appcelerator,
HTML5, Sencha,
Kendo, Edge,
PhoneGap, Corona
Xamarin,
Dalvik
Titanium.Geolocation.distanceFilter
= .25;
Ti.Geolocation.purpose = Callbacks
Are Your Friend”;
// make the API call
Ti.Geolocation.getCurrentPosition(func
tion(e) {
// do this stuff when you have a
position, OR an error
if (e.error) {
Ti.API.error('geo - current
position' + e.error);
return;
}
// got the location information
Ti.App.info('got a location
',JSON.stringify(e));
}); JavaScript
100100110010
011001001100
100110010011
001001100100
110010
ARM Binary
Bytecode	
  IL	
  
JavaScript 런타임
인터프리터
가상 머신 (VM) 런
타임
네이티브 스크립트 가상머신
EMBARCADERO	
  TECHNOLOGIES	
  
순수 네이티브로 컴파일된 코드 – 모바일의 경우	
  
앱 소스 코드
FM 프레임워크
Cocoa SDK Native Developer Kit
.app in IPA .so in APK
EMBARCADERO	
  TECHNOLOGIES	
  
PlatformVendor
Tools
Embarcadero
HTML5 Cross
Platform
Appcelerator Xamarin
도구
XCode,Visual Studio,
Eclipse
RADStudio
Adobe, Sencha,
Kendo, HTML5Builder
Titanium Mono
플랫폼
Win or Mac or iOS
or Android*
Mac/Win/iOS 
Android* (2013)
iOS/Android iOS/Android iOS/Android
단일 소스/
멀티-디바이스
No Yes Yes 일부 일부
런타임 ARM ARM JavaScript JavaScript BytecodeVM
순수 네이티브 스크립트 VM
순수 네이티브	
  or	
  스크립트?	
  
*Android NDK 는 순수 네이티브 – Android ADK (Java/DavlikVM)은 순수 네이티브 아님	
  
EMBARCADERO	
  TECHNOLOGIES	
  
순수 네이티브,	
  컴파일된 코드	
  
•  순수 네이티브,	
  컴파일된 코드 (RAD	
  스튜디오 사용)는 스크립트가 없으며 하드
웨어 CPU에서 바로 작동되므로 다음과 같은 장점을 가짐:	
  
–  빠르다	
  –	
  Uncompromised	
  naNve	
  device	
  performance	
  with	
  full	
  naNve	
  API	
  
and	
  CPU	
  control	
  when	
  needed,	
  and	
  not	
  limited	
  by	
  or	
  slowed	
  by	
  script	
  
interpreters	
  and	
  VMs.	
  
–  예측 가능하다	
  –	
  Apps	
  run	
  directly	
  on	
  the	
  device	
  CPU,	
  as	
  intended	
  by	
  the	
  
device	
  vendors,	
  and	
  are	
  not	
  slowed	
  by	
  addiNonal	
  soRware	
  layers	
  and	
  
random	
  garbage	
  collecNon.	
  	
  
–  사용자경험(UX)이 더 뛰어나다	
  –	
  Apps	
  take	
  full	
  advantage	
  of	
  device	
  
capabiliNes	
  and	
  performance.	
  	
  
	
  
EMBARCADERO	
  TECHNOLOGIES	
  
RAD	
  -­‐	
  직접 보면서 개발	
  
EMBARCADERO	
  TECHNOLOGIES	
  
EMBARCADERO	
  TECHNOLOGIES	
  
최신 언어의 기능	
  
•  Property-­‐Method-­‐Event	
  	
  
•  AutomaNc	
  Reference	
  CounNng	
  
•  Interfaces	
  
•  A/ributes	
  
•  Generics/CollecNons	
  
•  Anonymous	
  Methods	
  (Lambda	
  funcNons/closures)	
  
•  Rich	
  RTTI	
  
EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
사물인터넷(IoT) 앱 개발	
  
EMBARCADERO	
  TECHNOLOGIES	
  
FireUI	
  
•  엠바카데로의 기술 컬렉션으로 하나의 화면(UI) 폼을
서로 다른 모든 디바이스와 화면 비율에 적용	
  
–  멀티-­‐디바이스 디자이너	
  
–  MulNView	
  컴포넌트	
  
–  Behavior 서비스	
  
EMBARCADERO	
  TECHNOLOGIES	
  
멀티-­‐디바이스 디자이너	
  
•  마스터 폼 디자인	
  
•  필요하면 특정 뷰를 생성	
  
–  마스터 폼을 상속	
  
•  단일 프로젝트의 단일 폼이
모든 디바이스에 적용	
  
–  UI	
  코드와 이벤트 처리 공유	
  
EMBARCADERO	
  TECHNOLOGIES	
  
TMulNView 컴포넌트	
  
•  디바이스의 화면에 알
맞게 마스터 목록과 메
뉴를 표시	
  
–  PlaYormBehaviour	
  
–  Drawer	
  
–  Panel	
  
–  Popover	
  
–  Custom	
  
EMBARCADERO	
  TECHNOLOGIES	
  
Behavior	
  서비스	
  
•  개발자가 앱이 실행될
디바이스,	
  OS,	
  화면 요
소에 액세스할 수 있는
API	
  
•  MulNView	
  컴포넌트가
자동으로 화면에 반응할
수 있도록 하는 기반	
  
EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
연결된 앱
EMBARCADERO	
  TECHNOLOGIES	
  
왜 사물인터넷 (IoT) 인가?	
  
•  사물인터넷(IoT)은 우리가 디바이스를
사용하고 상호작용하는 방식을 바꾸고
있습니다	
  
•  기기/웨어러블은 새로운 사용자 경험
(UX)	
  입니다	
  
•  앱은 더이상 혼자있을 수 없습니다.
앱은 디바이스, 기기, 클라우드, 데이터
요소로 분산되어서 존재합니다.	
  
	
  
WorksWith
EMBARCADERO	
  TECHNOLOGIES	
  
현재의 앱을 사물인터넷으로 확장
Appmethod	
  breath	
  new	
  life	
  into	
  exisNng	
  applicaNons	
  by	
  
enabling	
  developers	
  to	
  easily	
  IOT	
  extend	
  exisNng	
  apps	
  
connecNng	
  devices,	
  sensors,	
  data	
  and	
  services.	
  	
  
연결된 앱들을 구축
With AppTethering, developers easily extend an app user
experience across devices and gadgets. This is especially
powerful for extending the utility of existing desktop and mobile
apps. Virtually all industries can immediately benefit, such as
Point of Sale, Food Services, Healthcare, Manufacturing and
Shipping but the applications are limitless.
EMBARCADERO	
  TECHNOLOGIES	
  
수천가지의 디바이스와 동작
Appmethod’s	
  integrated	
  wireless	
  support	
  
(Bluetooth	
  and	
  Wifi	
  )	
  works	
  with	
  thousands	
  of	
  “off	
  
the	
  shelf”	
  consumer	
  and	
  industry	
  specific	
  devices.	
  
Appmethod’s	
  approach	
  make	
  it	
  easy	
  to	
  integrate	
  
virtually	
  any	
  device	
  into	
  the	
  app	
  user	
  experience,	
  
and	
  even	
  support	
  mulNple	
  device	
  vendors	
  with	
  the	
  
same	
  code.	
  	
  
Bluetooth  WiFi 내장
Appmethod's integrated Bluetooth and WiFi support
in the RTL and easy to use components enable
developers to easily connect to any wireless and
Internet connected gadgets, sensors and devices.
EMBARCADERO	
  TECHNOLOGIES	
  
AT	
  
AT	
  
PC	
  앱	
  
모바일 앱	
  
스마트폰 앱	
  
AT	
  
•  앱을 서로서로 연결
•  디바이스 자동 탐색
•  다른 디바이스의 이벤트와 동작을 제어
•  앱을 원격 조정
•  데이터 송수신
•  Bluetooth  WiFi 지원
앱 테더링 (AppTethering)	
  
EMBARCADERO	
  TECHNOLOGIES	
  
•  개발자들이 상호 연결되는 새로운 앱을 만들 수 있다:	
  앱들이
서로서로 연결되고, 기기, 클라우드 서비스, 데이터에 연결	
  
•  RAD 스튜디오와 앱메소드는 연결된 앱들의 새로운 세상을 위한
개발 도구	
  
•  상호 연결의 주요 4 영역:	
  
–  모바일/PC	
  디바이스	
  
–  기기	
  
–  클라우드 서비스	
  
–  엔터프라이즈 데이터	
  
RAD스튜디오와 사물인터넷(IoT)	
  
EMBARCADERO	
  TECHNOLOGIES	
  
사물인터넷(IoT)에 연결하려면	
  
•  앱을 패키징하여 로드	
  
–  Bluetooth	
  or	
  WiFi	
  테더링	
  
•  Bluetooth	
  LE 프로파일	
  
–  GATT	
  
•  REST	
  APIs	
  over	
  WiFi	
  
•  플랫폼 SDK	
  
EMBARCADERO	
  TECHNOLOGIES	
  
All	
  “things”	
  connected	
  
EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
엔터프라이즈를 위한 IoT (헬스
케어, 스마트 공장…)
EMBARCADERO	
  TECHNOLOGIES	
  
EMBARCADERO	
  TECHNOLOGIES	
  
엔터프라이즈 모빌리티 서비스	
  
(Enterprise	
  Mobility	
  Services,	
  EMS)	
  
•  턴키 미들웨어 서버,	
  기업용 사물 인터넷 기능 내장	
  
–  사용자 관리, 인증	
  
–  REST 위에 직접 만든 API들을 오픈	
  
–  엔터프라이즈 데이터베이스를 REST를 통해 연결 (Oracle,	
  MS	
  
SQL	
  Server,	
  DB2,	
  Informix,	
  Sybase,	
  등)	
  
–  모바일 임베디드, 서버-­‐사이드 DB 내장	
  
–  웹 콘솔을 통해 사용자, 디바이스,	
  API	
  사용 분석	
  
EMBARCADERO	
  TECHNOLOGIES	
  
ConnecNng	
  to	
  All	
  Things	
  
33	
  
RTL	
  
App	
  Tethering 컴포넌트	
  Framework	
  
BT	
  Speaker	
  
	
  
	
  
	
  
Google	
  Glass	
  
	
  
	
  
	
  
Samsung	
  TV	
  
	
  
	
  
	
  
Wireless	
  Scale	
  
	
  
	
  
	
  
Carplay	
  
	
  	
  
XML	
  
	
  
Device	
  Profiles	
  	
  
(100’s	
  to	
  1000’s)	
  
EMBARCADERO	
  TECHNOLOGIES	
  
기업용 IOT	
  
34	
  
EMS	
  서버	
  
•  사용자 인증	
  
•  API	
  호스팅	
  
•  기업 데이터 액세스	
  
•  데이터 저장소	
  
•  IOT	
  디바이스 접근 통제	
  
EMS	
  IOT	
  
Repeater	
  
사용자 근처의 사물	
  
IOT	
  Repeater 근처의 사물	
  
EMS	
  서버 근처의 사물	
  
모든 클라우드 서비스	
  
기업 내의 모든	
  
데이터와 서비스	
  
	
  
EMBARCADERO	
  TECHNOLOGIES	
  
Example:	
  병원/의료영상 검사실	
  
35	
  
EMS	
  서버	
  
•  사용자 인증	
  
•  API	
  호스팅	
  
•  기업 데이터 액세스	
  
•  안전한 데이터 저장소	
  
•  IOT	
  디바이스 접근 통제	
  
EMS	
  IOT	
  
Repeater	
  
아웃365	
  
캘린더	
  
대기실	
  
EMS	
  IOT	
  
Repeater	
  
영상 검사실	
  
Oracle	
  
암호화된 데이터	
   IT	
  
BAAS	
  
의료진의 태블릿	
  
환자의	
  
폰	
  
환자의	
  
스마트워치	
  
다음 환자	
  
호출	
  
대기시간	
  
표시	
  
Imaging	
  Center	
  
Michael,	
  Dr.	
  Jones	
  will	
  See	
  you	
  now.	
  
	
  
	
  
	
  
	
  
	
  
Close	
   View	
  
간호사실	
  
EMS	
  
IOT	
  
Repeater	
  
간호사	
  
태블릿	
  
MRI	
  스캐너	
  
EMBARCADERO	
  TECHNOLOGIES	
  
Example:	
  스마트 공장	
  
36	
  
EMS	
  서버	
  
•  사용자 인증	
  
•  API	
  호스팅	
  
•  기업 데이터 액세스	
  
•  안전한 데이터 저장소	
  
•  IOT	
  디바이스 접근 통제	
  
EMS	
  
IOT	
  
Repeater	
  
생산 라인	
  
EMS	
  IOT	
  
Repeater	
  
Oracle	
  
암호화된 데이터	
   IT	
  
엔지니어의 태블릿	
  
엔지니어의 폰	
  
엔지니어의	
  
스마트워치	
  
생산 현황	
  
표시	
  
로봇	
  
자재 창고	
  
실내 온도	
  	
  
습도	
  
센서	
  
재고 관리 로봇	
  
EMBARCADERO	
  TECHNOLOGIES	
  EMBARCADERO	
  TECHNOLOGIES	
  
헬스케어 시나리오	
  
RAD	
  스투디오로 구현	
  
EMBARCADERO	
  TECHNOLOGIES	
  
RAD	
  Studio의 사물인터넷 지원	
  
•  멀티디바이스 개발	
  
•  블루투스	
  
–  클래식 블루투스	
  
–  블루투스	
  LE	
  컴포넌트	
  
•  REST 연결(IoT 기기/센서)	
  
•  앱 테더링(WiFi/블루투스)	
  
EMBARCADERO	
  TECHNOLOGIES	
  
가족	
  병원	
   환자	
  
모바일 헬스케어 시나리오	
  
진료용 PC	
  
환자의 	
  
심장박동 	
  
센서	
  
가족의	
  
폰 or	
  태블릿	
  
환자의 	
  
폰	
  or	
  워치	
  
Cloud	
  
(BaaS)	
  
응급실 태블릿	
  
•  환자
 심장박동
 센서
 장착
 
•  환자의
 스마트폰과
 연결
 
•  백엔드(클라우드)에
 심박
정보
 전송
 
•  긴급(심장이상)
 시
 조치안내
 
•  가족에게
 방문
 알림
 
•  응급실에서
 태블릿으로
 
환자상태
 확인
 후
 빠른대응
 
응급
AT	
  
GCM
EMBARCADERO	
  TECHNOLOGIES	
  
모바일 헬스케어 시나리오 데모	
  
Bluetooth / Mobile / Cloud in RAD Studio
DEMOSTRATIONS
모바일
 헬스캐어

20150303 RAD스튜디오로 사물인터넷(IoT) 구현하기

  • 1.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   RAD스튜디오로 사물 인터넷(IoT) 구현하기 DeepDive! 2015년
  • 2.
  • 3.
  • 4.
  • 5.
    EMBARCADERO  TECHNOLOGIES   발표자   •  김현수(Humphery  Kim)   •  데브기어 델파이 에반젤리스트   •  데브기어 테크사이트 :   h/p://tech.devgear.co.kr/   •  블로그 :  h/p://blog.hjf.pe.kr/   •  Facebook  :  h/p://?.com/hjfactory   •  hskim@embarcadero.kr  
  • 6.
    EMBARCADERO  TECHNOLOGIES   Agenda   •  엠바카데로 (솔루션과 전략) •  사물인터넷(IoT) 앱 개발 •  연결된 앱 (Connected Apps) 그리고 모든 것에 연결 •  엔터프라이즈 기업을 위한 사물인터넷(IoT) •  헬스캐어 시나리오 구현 •  데모로 살펴보는 사물인터넷 기술
  • 7.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   엠바카데로 Embarcadero 솔루션과 전략
  • 8.
    EMBARCADERO  TECHNOLOGIES   5   Founded 1993 3.2 Million Customers 500+ Employees in 29 Countries 5 RD Centers of Excellence World Wide Sales Support Embarcadero Technologies
  • 9.
    EMBARCADERO  TECHNOLOGIES   수백만의Delphi/C++ 개발자는 코딩 중… •  연간 97 억 줄 •  10만 윈도우 애플리케이션 •  80% 적은 코드 – 1 줄당 1,700원 •  68조원을 개발자가 연간 절감 •  이제, 사물인터넷으로 확장
  • 10.
    EMBARCADERO  TECHNOLOGIES   멀티-­‐디바이스순수 네이티브   Apple   Google   Microso   HTML5   Appcelerator   Kony     단일   디바이스   멀티   디바이스   스크립트  순수 네이티브   멀티-­‐디바이스   순수 네이티브   Embarcadero   찬성   네이티브 사용자경험 (UX)   네이티브 성능   보안성   찬성   단일 팀   개발 비용이 더 작음   신속한 시장 진출    
  • 11.
    EMBARCADERO  TECHNOLOGIES   $ Future 델파이or C++ FM 앱 프레임워크 단일 팀,  단일 코드베이스   단일 팀   단일 코드베이스   RAD  스튜디오로 멀티-­‐디바이스를 실현  
  • 12.
    EMBARCADERO  TECHNOLOGIES   Embarcadero, XCode Appcelerator, HTML5,Sencha, Kendo, Edge, PhoneGap, Corona Xamarin, Dalvik Titanium.Geolocation.distanceFilter = .25; Ti.Geolocation.purpose = Callbacks Are Your Friend”; // make the API call Ti.Geolocation.getCurrentPosition(func tion(e) { // do this stuff when you have a position, OR an error if (e.error) { Ti.API.error('geo - current position' + e.error); return; } // got the location information Ti.App.info('got a location ',JSON.stringify(e)); }); JavaScript 100100110010 011001001100 100110010011 001001100100 110010 ARM Binary Bytecode  IL   JavaScript 런타임 인터프리터 가상 머신 (VM) 런 타임 네이티브 스크립트 가상머신
  • 13.
    EMBARCADERO  TECHNOLOGIES   순수네이티브로 컴파일된 코드 – 모바일의 경우   앱 소스 코드 FM 프레임워크 Cocoa SDK Native Developer Kit .app in IPA .so in APK
  • 14.
    EMBARCADERO  TECHNOLOGIES   PlatformVendor Tools Embarcadero HTML5Cross Platform Appcelerator Xamarin 도구 XCode,Visual Studio, Eclipse RADStudio Adobe, Sencha, Kendo, HTML5Builder Titanium Mono 플랫폼 Win or Mac or iOS or Android* Mac/Win/iOS Android* (2013) iOS/Android iOS/Android iOS/Android 단일 소스/ 멀티-디바이스 No Yes Yes 일부 일부 런타임 ARM ARM JavaScript JavaScript BytecodeVM 순수 네이티브 스크립트 VM 순수 네이티브  or  스크립트?   *Android NDK 는 순수 네이티브 – Android ADK (Java/DavlikVM)은 순수 네이티브 아님  
  • 15.
    EMBARCADERO  TECHNOLOGIES   순수네이티브,  컴파일된 코드   •  순수 네이티브,  컴파일된 코드 (RAD  스튜디오 사용)는 스크립트가 없으며 하드 웨어 CPU에서 바로 작동되므로 다음과 같은 장점을 가짐:   –  빠르다  –  Uncompromised  naNve  device  performance  with  full  naNve  API   and  CPU  control  when  needed,  and  not  limited  by  or  slowed  by  script   interpreters  and  VMs.   –  예측 가능하다  –  Apps  run  directly  on  the  device  CPU,  as  intended  by  the   device  vendors,  and  are  not  slowed  by  addiNonal  soRware  layers  and   random  garbage  collecNon.     –  사용자경험(UX)이 더 뛰어나다  –  Apps  take  full  advantage  of  device   capabiliNes  and  performance.      
  • 16.
    EMBARCADERO  TECHNOLOGIES   RAD  -­‐  직접 보면서 개발  
  • 17.
  • 18.
    EMBARCADERO  TECHNOLOGIES   최신언어의 기능   •  Property-­‐Method-­‐Event     •  AutomaNc  Reference  CounNng   •  Interfaces   •  A/ributes   •  Generics/CollecNons   •  Anonymous  Methods  (Lambda  funcNons/closures)   •  Rich  RTTI  
  • 19.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   사물인터넷(IoT) 앱 개발  
  • 20.
    EMBARCADERO  TECHNOLOGIES   FireUI   •  엠바카데로의 기술 컬렉션으로 하나의 화면(UI) 폼을 서로 다른 모든 디바이스와 화면 비율에 적용   –  멀티-­‐디바이스 디자이너   –  MulNView  컴포넌트   –  Behavior 서비스  
  • 21.
    EMBARCADERO  TECHNOLOGIES   멀티-­‐디바이스디자이너   •  마스터 폼 디자인   •  필요하면 특정 뷰를 생성   –  마스터 폼을 상속   •  단일 프로젝트의 단일 폼이 모든 디바이스에 적용   –  UI  코드와 이벤트 처리 공유  
  • 22.
    EMBARCADERO  TECHNOLOGIES   TMulNView컴포넌트   •  디바이스의 화면에 알 맞게 마스터 목록과 메 뉴를 표시   –  PlaYormBehaviour   –  Drawer   –  Panel   –  Popover   –  Custom  
  • 23.
    EMBARCADERO  TECHNOLOGIES   Behavior  서비스   •  개발자가 앱이 실행될 디바이스,  OS,  화면 요 소에 액세스할 수 있는 API   •  MulNView  컴포넌트가 자동으로 화면에 반응할 수 있도록 하는 기반  
  • 24.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   연결된 앱
  • 26.
    EMBARCADERO  TECHNOLOGIES   왜사물인터넷 (IoT) 인가?   •  사물인터넷(IoT)은 우리가 디바이스를 사용하고 상호작용하는 방식을 바꾸고 있습니다   •  기기/웨어러블은 새로운 사용자 경험 (UX)  입니다   •  앱은 더이상 혼자있을 수 없습니다. 앱은 디바이스, 기기, 클라우드, 데이터 요소로 분산되어서 존재합니다.     WorksWith
  • 27.
    EMBARCADERO  TECHNOLOGIES   현재의앱을 사물인터넷으로 확장 Appmethod  breath  new  life  into  exisNng  applicaNons  by   enabling  developers  to  easily  IOT  extend  exisNng  apps   connecNng  devices,  sensors,  data  and  services.     연결된 앱들을 구축 With AppTethering, developers easily extend an app user experience across devices and gadgets. This is especially powerful for extending the utility of existing desktop and mobile apps. Virtually all industries can immediately benefit, such as Point of Sale, Food Services, Healthcare, Manufacturing and Shipping but the applications are limitless.
  • 28.
    EMBARCADERO  TECHNOLOGIES   수천가지의디바이스와 동작 Appmethod’s  integrated  wireless  support   (Bluetooth  and  Wifi  )  works  with  thousands  of  “off   the  shelf”  consumer  and  industry  specific  devices.   Appmethod’s  approach  make  it  easy  to  integrate   virtually  any  device  into  the  app  user  experience,   and  even  support  mulNple  device  vendors  with  the   same  code.     Bluetooth WiFi 내장 Appmethod's integrated Bluetooth and WiFi support in the RTL and easy to use components enable developers to easily connect to any wireless and Internet connected gadgets, sensors and devices.
  • 29.
    EMBARCADERO  TECHNOLOGIES   AT   AT   PC  앱   모바일 앱   스마트폰 앱   AT   •  앱을 서로서로 연결 •  디바이스 자동 탐색 •  다른 디바이스의 이벤트와 동작을 제어 •  앱을 원격 조정 •  데이터 송수신 •  Bluetooth WiFi 지원 앱 테더링 (AppTethering)  
  • 30.
    EMBARCADERO  TECHNOLOGIES   • 개발자들이 상호 연결되는 새로운 앱을 만들 수 있다:  앱들이 서로서로 연결되고, 기기, 클라우드 서비스, 데이터에 연결   •  RAD 스튜디오와 앱메소드는 연결된 앱들의 새로운 세상을 위한 개발 도구   •  상호 연결의 주요 4 영역:   –  모바일/PC  디바이스   –  기기   –  클라우드 서비스   –  엔터프라이즈 데이터   RAD스튜디오와 사물인터넷(IoT)  
  • 31.
    EMBARCADERO  TECHNOLOGIES   사물인터넷(IoT)에연결하려면   •  앱을 패키징하여 로드   –  Bluetooth  or  WiFi  테더링   •  Bluetooth  LE 프로파일   –  GATT   •  REST  APIs  over  WiFi   •  플랫폼 SDK  
  • 32.
    EMBARCADERO  TECHNOLOGIES   All  “things”  connected  
  • 33.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   엔터프라이즈를 위한 IoT (헬스 케어, 스마트 공장…)
  • 34.
  • 35.
    EMBARCADERO  TECHNOLOGIES   엔터프라이즈모빌리티 서비스   (Enterprise  Mobility  Services,  EMS)   •  턴키 미들웨어 서버,  기업용 사물 인터넷 기능 내장   –  사용자 관리, 인증   –  REST 위에 직접 만든 API들을 오픈   –  엔터프라이즈 데이터베이스를 REST를 통해 연결 (Oracle,  MS   SQL  Server,  DB2,  Informix,  Sybase,  등)   –  모바일 임베디드, 서버-­‐사이드 DB 내장   –  웹 콘솔을 통해 사용자, 디바이스,  API  사용 분석  
  • 36.
    EMBARCADERO  TECHNOLOGIES   ConnecNng  to  All  Things   33   RTL   App  Tethering 컴포넌트  Framework   BT  Speaker         Google  Glass         Samsung  TV         Wireless  Scale         Carplay       XML     Device  Profiles     (100’s  to  1000’s)  
  • 37.
    EMBARCADERO  TECHNOLOGIES   기업용IOT   34   EMS  서버   •  사용자 인증   •  API  호스팅   •  기업 데이터 액세스   •  데이터 저장소   •  IOT  디바이스 접근 통제   EMS  IOT   Repeater   사용자 근처의 사물   IOT  Repeater 근처의 사물   EMS  서버 근처의 사물   모든 클라우드 서비스   기업 내의 모든   데이터와 서비스    
  • 38.
    EMBARCADERO  TECHNOLOGIES   Example:  병원/의료영상 검사실   35   EMS  서버   •  사용자 인증   •  API  호스팅   •  기업 데이터 액세스   •  안전한 데이터 저장소   •  IOT  디바이스 접근 통제   EMS  IOT   Repeater   아웃365   캘린더   대기실   EMS  IOT   Repeater   영상 검사실   Oracle   암호화된 데이터   IT   BAAS   의료진의 태블릿   환자의   폰   환자의   스마트워치   다음 환자   호출   대기시간   표시   Imaging  Center   Michael,  Dr.  Jones  will  See  you  now.             Close   View   간호사실   EMS   IOT   Repeater   간호사   태블릿   MRI  스캐너  
  • 39.
    EMBARCADERO  TECHNOLOGIES   Example:  스마트 공장   36   EMS  서버   •  사용자 인증   •  API  호스팅   •  기업 데이터 액세스   •  안전한 데이터 저장소   •  IOT  디바이스 접근 통제   EMS   IOT   Repeater   생산 라인   EMS  IOT   Repeater   Oracle   암호화된 데이터   IT   엔지니어의 태블릿   엔지니어의 폰   엔지니어의   스마트워치   생산 현황   표시   로봇   자재 창고   실내 온도     습도   센서   재고 관리 로봇  
  • 40.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   헬스케어 시나리오   RAD  스투디오로 구현  
  • 41.
    EMBARCADERO  TECHNOLOGIES   RAD  Studio의 사물인터넷 지원   •  멀티디바이스 개발   •  블루투스   –  클래식 블루투스   –  블루투스  LE  컴포넌트   •  REST 연결(IoT 기기/센서)   •  앱 테더링(WiFi/블루투스)  
  • 42.
    EMBARCADERO  TECHNOLOGIES   가족  병원   환자   모바일 헬스케어 시나리오   진료용 PC   환자의   심장박동   센서   가족의   폰 or  태블릿   환자의   폰  or  워치   Cloud   (BaaS)   응급실 태블릿   •  환자
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
    EMBARCADERO  TECHNOLOGIES   모바일헬스케어 시나리오 데모   Bluetooth / Mobile / Cloud in RAD Studio DEMOSTRATIONS 모바일
  • 66.
  • 67.
  • 68.
    EMBARCADERO  TECHNOLOGIES   데모1.모바일과 심박센서 연결   진료용 PC   환자의   심장박동   센서   환자의   폰  or  워치   응급실 태블릿   가족의   폰 or  태블릿   Cloud   (BaaS)   응급 AT   1.  심박센서 연결(블루투스 LE)   2.  심박정보 모니터링 앱(스마트폰, 스마 트 패드, 웨어러블 디바이스)   3.  심박데이터 클라우드 등록/조회(BaaS)   4.  위급사항 발생 시 원격 메시지 전송 (BaaS,  GCM:  Google  Cloud  Message)   GCM 가족  병원   환자  
  • 69.
    EMBARCADERO  TECHNOLOGIES   데모2.심박데이터 활용 모바일 확장   가족  병원   환자   진료용 PC   환자의   심장박동   센서   가족의   폰 or  태블릿   Cloud   (BaaS)   응급실 태블릿   AT   환자의   폰  or  워치   GCM 1.  진료PC에서 심박데이터 클라우드 조회 (BaaS)   2.  진료PC에서 환자에게 메시지전달(GCM)   3.  (사내에서)진료 데이터를 태블릿으로 제공(모바일확장,  AppTethering)   •  조회한 데이터 셋 일괄 전송 (FireDAC)   •  문자열, 파일(스트림) 전송 •  폰과 태블릿용 최적UI 제공 (FireUI)  
  • 70.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   여러분의 앱을   센서와 기기로 확장할 수 있는   RAD스튜디오의 주요 기술  
  • 71.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   연결된 앱
  • 72.
    EMBARCADERO  TECHNOLOGIES   블루투스   •  블루투스 지원(System.Bluetooth)   •  블루투스 LE 컴포넌트(TBluetoothLE)   •  클래식 블루투스 라이브러리   –  TBluetoothManager   –  TBluetoothAdapter   –  TBluetoothDevice   블루투스 :  h/ps://www.bluetooth.org/ko-­‐kr/  
  • 73.
    EMBARCADERO  TECHNOLOGIES   블루투스기술 종류   클래식 블루트스   블루투스 LE(Low  Energy)   •  블루투스 LE 보타 처리량이 뛰어나다.   •  데이터 전송속도 2Mbps   •  소비전력이 크다.   •  표준 블루투스 프로파일(SPP,  DUN,  PAN) 에 근거한다.   •  프로토콜은 최대 7 솔레이브로 제한된다.   •  소량의 데이터를 주기적 전송 시 적합   •  데이터 전송속도 100Kbps 미만   •  소비전력이 매우 적다.   •  GATT 프로파일에 근거한다.   •  다수의 솔레이브를 지원한다.   •  연결 시간이 짧고 페어링이 필요없다.  
  • 74.
    EMBARCADERO  TECHNOLOGIES   일반속성 프로파일(GATT)   •  애플리케이션에서 표준 서비스 사용을 위해 서비스별로 정의된 값   •  GATT(일반  속성  프로파일)  사양   –  h/ps://developer.bluetooth.org/ga// services/Pages/ServicesHome.aspx   Bluetooth  Base  UUID  :    00000000-­‐0000-­‐1000-­‐8000-­‐00805F9B34FB   Heart  Rate  :      0000180D-­‐0000-­‐1000-­‐8000-­‐00805F9B34FB   Heart  Rate  Measurement  :    00002A37-­‐0000-­‐1000-­‐8000-­‐00805F9B34FB   Body  Sensor  LocaNon  :    00002A38-­‐0000-­‐1000-­‐8000-­‐00805F9B34FB  
  • 75.
    EMBARCADERO  TECHNOLOGIES   클라우드수화물 무게 기록   BALANCE  BLUETOOTH     SMART  SCALE(WAHOO)     사용기술   •  블루투스 LE   •  클라우드(BaaS)   h/p://blog.hjf.pe.kr/274  
  • 76.
    EMBARCADERO  TECHNOLOGIES   스마트홈 컨트롤러   Z-­‐Wave,  VeraLite  Home   Controller     사용기술   •  REST  API  over  WiFi   •  JSON   h/p://blog.appmethod.com/developing-­‐the-­‐internet-­‐of-­‐things-­‐ kwikset-­‐smartcode-­‐deadbolt-­‐and-­‐veralite-­‐smart-­‐home-­‐controller  
  • 77.
    EMBARCADERO  TECHNOLOGIES   가정용조명 컨트롤러   Philips  Hue  Lights     사용기술   •  REST  API  over  WiFi   •  JSON   h/p://blogs.embarcadero.com/davidi/2014/02/03/43493  
  • 78.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   사물인터넷(IoT) 앱 개발  
  • 79.
    EMBARCADERO  TECHNOLOGIES   FireUI  :  장치의 다양성은 더욱 확장될 것!!  
  • 80.
    EMBARCADERO  TECHNOLOGIES   멀티디바이스 개발(모바일 /  PC  / 웨어러블)   멀티-­‐디바이스 디자이너   TMulNView   Behaviour  서비스   h/p://tech.devgear.co.kr/405789   h/p://tech.devgear.co.kr/405793  
  • 81.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   엔터프라이즈 데이터 엑세스  
  • 82.
    EMBARCADERO  TECHNOLOGIES   MEAP(Mobile  Enterprise  ApplicaNon  Pla`orm)             REST  Client     DataSnap   (미들웨어)         Cloud  Service   (BaaS)   EMS   (기업형 모빌   리티 서비스)   백엔드 데이터와 연결할 수 있는 다양한 방법(VCL  /  FMX)  
  • 83.
    EMBARCADERO  TECHNOLOGIES   REST클라이언트   •  표준 웹 프로토콜(REST) 지원   •  기능별 독립 컴포넌트   –  TRESTClinet   –  TRESTRequest   –  TRESTReponse   •  JSON  데이터 자동분석   •  REST  Debugger:  REST 분석툴  
  • 84.
    EMBARCADERO  TECHNOLOGIES   데이터스냅   •  델파이로 만드는 미들웨어 서버   –  미들웨어 서버를 통해 엔터프라이즈 DBMS,  사내 보안데이터 연결   –  TCP/IP,  HTTP,  HTTPS 지원   –  서버 데이터셋,  메소드 제공   –  서버의 메소드 자동 생성   –  모바일과 데스크탑 클라이언트 제공   DataSnap   서버   Database  
  • 85.
    EMBARCADERO  TECHNOLOGIES   클라우드:  Backend  as  a  Service   •  클라우드 기반 백엔드 서비스   •  제공기능   –  데이터와 파일 스토리지   –  사용자 관리   –  원격 푸시 알림   –  소셜네트워크   –  사용자 분석   •  Backend  컴포넌트 이용   h/p://www.youtube.com/playlist? list=PLpSzuJvn7BTwNO6lw9dKHfqFf4bkrJhw2  
  • 86.
    EMBARCADERO  TECHNOLOGIES   엔터프라이즈모빌리티 서비스(EMS)   •  턴키 방식의 REST  기반의 MEAP 미들웨어   –  사용자 정의  API    호스팅   –  엔터프라이즈 데이터베이스 엑세스   –  사내 서비스와 클라우드 엑세스   –  모바일과 데스크탑 클라이언트 지원   –  클라이언트용 컴포넌트 제공(BaaS 기반)   –  사용자,  REST  API 호출 웹 콘솔을 통해 분석  
  • 87.
    EMBARCADERO  TECHNOLOGIES   앱테더링   •  VCL 윈도우 앱을 모바일 장치로 가장 쉽게 확장하는 방법   –  신규개발 보다 상호보완과 확장   •  양측에 컴포넌트 추가로 커뮤니케이션   –  디바이스 자동 탐색 / 앱간 연결   –  앱을 원격 조정 / 데이터 송수신   –  WiFi   블루투스 인터페이스 지원   h/p://tech.devgear.co.kr/406984   h/p://www.youtube.com/watch?v=OFNsLU7OXLk    
  • 88.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   마무리 요약  
  • 89.
    EMBARCADERO  TECHNOLOGIES   마무리요약   •  사물인터넷 앱 개발과 커넥티드(Connected)!   •  모바일 헬스캐어 시나리오를 RAD  Studio로 구현   •  사물인터넷 센서와 기기 연결 앱 개발   –  블루투스/LE,  REST,  WiFi,  FireUI   •  엔터프라이즈 데이터 연결 기술   –  BaaS,  앱테더링,  데이터스냅,  REST  클라이언트   •  최고의 RAD  Studio  
  • 90.
    EMBARCADERO  TECHNOLOGIES   교육안내   •  h/p://devgear.co.kr/edu  
  • 91.
    EMBARCADERO  TECHNOLOGIES   도서안내   •  한 번에 개발하는 안드로이드/iOS 앱 with  델파이 –  2편 고급활용   •  김원경, 김현수, 오상현 저   •  h/p://www.devgear.co.kr/book/   •  전국 서점에서 만나보세요   •  대상   •  따라하기 과정을 통한 학습   •  모바일 개발을 시작하는 개발자  
  • 92.
    EMBARCADERO  TECHNOLOGIES  EMBARCADERO  TECHNOLOGIES   감사합니다.   h/p://tech.devgear.co.kr   h/p://www.devgear.co.kr   h/p://www.facebook.com/devgear    
  • 93.