2. 클라우드 컴퓨팅 시대
• IT자원을 서비스로 제공하는 컴퓨팅 스타일
• 세 가지 자원: 인프라, 플랫폼, 애플리케이션
• 가트너의 클라우드 특성: 서비스 기반, 확장성
과 탄력적, 공유, 사용한 만큼 과금, 인터넷 기
반 기술
13년 3월 28일 목
3. MBaaS 정의 및 특성
• 모바일 서비스에 특화된 백엔드를 서비스 형
태로 제공하는 클라우드 서비스
• 모바일 백엔드로 줄여 부르기도 함
• 모바일 앱 개발시 자주 사용하는 백엔드 기능
을 표준화해서 제공. 유저, 파일, 데이터, 콘텐
츠, CDN, 과금, 결제, In-App 구매, 등등
13년 3월 28일 목
4. MBaaS의 클라우드 특성
• 모바일 서비스 기반
• 확장성 - IaaS의 인프라적 확장성, Nosql 채용
• 공유 - 여러 백엔드 앱이 같은 리소스 활용
• 사용한 만큼 과금 - API호출수, User수, 용량,...
• 인터넷 기반 기술 - REST API, SDK제공
13년 3월 28일 목
5. SNS 구현시...
• 단말
• 자료구조 정의, API정의, UI구현, API구현, 서버와
연동테스트, 앱스토어 등록, 업데이트, ...
• 서버
• 자료 구조 정의, API정의, DB구현, 서버 로직 구
현, API구현, 단말과 연동테스트, 부하 테스트, 서
비스 오픈, 서비스 모니터링 및 대응
13년 3월 28일 목
6. 서버측 관련 기술
• 데이터베이스: RDBMS, Nosql
• API 설계
• 클라우드 인프라 설계
• 분산 컴퓨팅
13년 3월 28일 목
7. 서버기술과 단말기술
• 단말 개발자
• Obj-C, Java, Javascript
• UI/UX에 관심이 많음
• Single / small user 에 관심
• 간단한 자료구조
13년 3월 28일 목
8. MBaaS로 서버개발없이
백엔드를 사용
• 서비스 웹사이트
• 자료구조 (key-value)
• Web API
• 플랫폼별 SDK
13년 3월 28일 목
9. Web API
• http 프로토콜 준수, POST/GET/PUT/
DELETE, 200, 404, 500
• xml/json 표준화된 데이터 구조 사용
• RESTful 서비스, collection, entity 개념으로
데이터를 리소스로 접근
13년 3월 28일 목
10. 요약1
• MBaaS는 모바일 개발자들을 위한 클라우드형 서비
스이다.
• MBaaS는 백엔드를 개발하지 않고 서비스 형태로 사
용할 수 있다.
• MBaaS를 사용하면 개발 기간과 비용이 단축된다.
• MBaaS는 모바일 개발자들에게 친숙한 API를 제공한
다.
13년 3월 28일 목
12. 활용사례1- 푸시
• 기존의 어플리케이션개발과 모바일 앱스 개발의
가장 큰 차이점. 푸시(push notification)
• 모바일 앱을 설치하고 푸시 수신 동의하면 해당
디바이스의 해당 앱으로 푸시를 전송할 수 있음.
• 채팅이나 메일 앱, 메시지가 도착하면 그 앱을 켜
두지 않더라도 푸시 메시지를 통해 도착을 인지
할 수 있음.
13년 3월 28일 목
13. 활용사례1 - 푸시
• 안드로이드 푸시는 GCM(구글 클라우드 메시징), iOS는
APNS(애플 푸시 노티피케이션 서비스), MS에서는
MPNS 등의 서비스 제공
• 모바일 단말 + 앱 = 디바이스 토큰 (메일 주소 같은것)
• 디바이스 토큰 (주소)으로 어떤 메시지를 보내달라고 플
랫폼별 서비스로 요청하면, 서버에서 특정 단말의 특정
앱으로 메시지를 송신하고, 단말에서 수신하여 보여줌.
• 푸시 서비스를 위해서 전용서버 개발과 운영이 필요함.
13년 3월 28일 목
14. MBaaS에서 푸시기능
• 전용 서버 없이 푸시를 보낼 수 있도록 MBaaS
업체들이 기능을 제공하고 있음.
• Urban Airship, push.io, baas.io 등에서 멀티
플랫폼 대응이 가능한 지능적 푸시를 제공.
• Airpush같은 모바일 광고 업체는 푸시를 이용
한 광고 플랫폼 제공
13년 3월 28일 목
15. 기존에 푸시 보내려면...
• 서버를 마련한다.
• 서버에 인증서 설치
• 서버에 각 플랫폼별로 PNS서버와 연동 개발
• 서버에 단말에서의 메시지를 받기 위한 API를 개발
• 단말과 연동 테스트
• 만료된 디바이스 토큰에 대한 관리 로직 개발
• 대용량 서비스를 위해 서버 증설
• 플랫폼 추가시 PNS서버와 연동 추가 개발
13년 3월 28일 목
16. 푸시 이용 사례
• 김병훈 실버벨스튜디오 대표는 "스타디펜스에
바스아이오를 활용해 개발기간단축과 비용절
감을 실현했다"며 "서버환경 구현 부담을 없애
고 앱 품질에만 집중해 사용자들에게 만족스
러운 경험을 제공할 수 있을 것으로 기대한
다"고 말했다. - 지디넷 인터뷰
13년 3월 28일 목
17. 활용사례2-데이터
• 백엔드 데이터를 관리하는 방식이 RDBMS와
Nosql형태가 공존하고 있다.
• MBaaS는, 다양한 데이터구조를 저장할 수 있
고, 탄력적 서버 증설이 가능한 Nosql를 채택
하는 트랜드이다. (MongoDB, Cassandra 등)
• 데이터 관리의 일반적인 형태: 유저관리
13년 3월 28일 목
18. 활용사례2-데이터
• 유저 관리 기능
• 모바일 서비스에서 인증, 회원가입/탈퇴, 비
밀번호 변경/초기화 등의 이슈는 어떤 서비
스에서도 공통으로 필요한 기능이다.
• MBaaS의 대부분의 서비스는 유저 관리 기
능을 제공한다.
13년 3월 28일 목
19. 활용사례2-데이터
• 유저 데이터 뿐만 아니라, 범용 데이터를 저장
할 수 있다.
• 키-값 형태의 자료를 저장할 수 있다.
• 동적 스키마 적용, 다양한 비즈니스 모델을
유연하게 수용이 가능.
• 단말 SDK, WebAPI를 통해서 손쉽게 생성/저
장/삭제/수정이 가능.
13년 3월 28일 목
20. 활용사례3-SNS
• SNS를 구현하려면, MBaaS의 모든 기능을 활용해야한다.
• 회원 관리를 위해서 User기능
• 유저간의 following/follower 관계나 글과 댓글의 관계등
을 표현하기 위한 연결 기능
• 유저의 프로필 이미지 등을 저장하기 위한 파일 기능
• 내 친구의 활동현황을 보기 위한, 액티비티 스트림 기능
• 앱내부에서 고객의 피드백을 받기 위한 모바일 고객센터
기능
• 위치 기반의 검색을 통해서 주변에 있는 친구들의 글을
보여주는 기능 등. 종합 예술에 해당
13년 3월 28일 목
21. SNS-인증
• E-mail 기반의 자체 인증 뿐만 아니라, 페이스
북/트위터/구글 등 소셜 인증
• 인증에 성공하면 ‘토큰’을 받게 되고 이 토큰을
이용해서 API를 호출한 사람이 누구인지 증명
• 대부분의 MBaaS는 OAuth 스펙을 구현
13년 3월 28일 목
22. SNS-관계(연결)
• 소셜 네트워크 망을 표현하기 위해서 연결 기
능을 활용한다.
• A가 B를 follow한다.
• C 글에 D라는 댓글을 달았다.
• C 글을 B가 like했다.
13년 3월 28일 목
23. SNS-액티비티
• 소셜네트워크에 연결된 친구/following관계에
있는 사람의 액티비티를 나의 타임라인에서
볼 수 있도록 기록해주는 기능
• 내 친구A가 프로필 사진을 바꿨다.
• 내가 following하는 B가 A의 사진을 Like함
• B는 C라는 글을 생성했다. 등등...
13년 3월 28일 목
24. SNS-파일
• 프로필 사진을 올리는 3단계
• 사진을 업로드 한다. (어떻게?)
• 사진의 업로드 된 주소를 내 프로필 이미지
주소로 대체한다.
• 내 프로필을 누군가 요청할 때 새 프로필 주
소를 보내준다.
13년 3월 28일 목
25. SNS-모바일 고객센터
• 앱을 이용하는 고객들의 피드백은 소중하다.
• 기존 앱에서는 email, 블로그 운영 등으로 피드
백을 접수했었다.
• 하지만, 대부분의 고객들은 앱스토어에 댓글로
불평을 표시한다.
• 앱 내에서 고객의 피드백을 받을 수 있는 고객
센터로 고객 서비스의 질을 향상시킬 수 있음.
13년 3월 28일 목
26. 사례4-위치 기반 검색
• 모바일 시대로 넘어오면서 사용자의 동의하에
위치 정보를 쉽게 획득할 수 있게 되었다.
• 기존의 데이터와 차이점은 특정 좌표와 반경
을 주면 그 안에 있는 데이터를 조회가 가능.
• 안심병원
• location within 10000 of 37.51, 126.93
13년 3월 28일 목
27. 요약2
• MBaaS의 대표적인 활용 사례는 푸시, 유저, 데
이터, 파일, 위치기반 검색, 모바일 고객센터 등
이다.
• MBaaS에서 제공하는 백엔드 기능을 활용하면
SNS같은 복잡한 모바일 서비스도 ‘서버 개발
없이’ 구현할 수 있다.
13년 3월 28일 목
30. Parse
• 구글출신 개발자들이 창업. 빠르게 컨셉을 구현
하는 기술력.
• 데이터, 푸시, 소셜, 클라우드 코드, 스토어 기능
제공
• 제공 플랫폼: iOS, OSX, Android, Javascript,
Windows Phone 8, Windows 8, .NET, REST
API
• 국내 서비스시 느림 / 해외 서비스에서는 우수
13년 3월 28일 목
31. Sencha.io
• 모바일 웹 개발 JS 프레임웍 Sencha Touch 개
발자들이 손쉽게 백앤드를 구현할 수 있도록
제공하는 MBaaS 제품
• 유저, 데이터, pub/sub메시지, image 편집, 배포
기능 제공
13년 3월 28일 목
32. Kinvey
• BaaS라는 용어를 만든 회사, 마케팅이 강해서
관련 자료들 중에 유용한 것들이 많다.
• 푸시, 위치기반 검색, 유저, 커스텀 로직, 서드
파티 (twitter/FB/foursquare) 지원 기능
• iOS/Android/Javascript/REST 플랫폼 지원
13년 3월 28일 목
33. StackMob
• MBaaS계의 터줏대감
• 마켓 플레이스 존재, 백엔드의 커스텀 기능을
다른 유저들에게 판매할 수 있다.
• 데이터, 푸시, 소셜, 위치기반 검색 제공
• iOS, Android, Javascript, Java/PHP/Rest/Ruby
플랫폼 지원
13년 3월 28일 목
34. ACS
• 크로스 플랫폼 앱 저작툴, 타이타늄(Titanium)
을 만든 Appcelerator에서 제공하는 백엔드
서비스. App Cloud Service의 약어
• 1,2,3-tier로 나눠서 다양한 기능 제공
• 무료 API호출수가 타사에 비해 10배나 많음
13년 3월 28일 목
35. baas.io
• 국내 회사 kth에서 서비스 (kt 계열사)
• 유저, 데이터, 푸시, 파일, 위치기반, 모바일 고
객센터 기능 제공
• iOS/Android/Javascript/REST 플랫폼 제공
• 국내 서비스 경우 빠른 반응속도 보장
• 프로모션 기간중 무료 사용 가능
13년 3월 28일 목
36. 요약3
• 국외 MBaaS 제품은 다수 존재함(약20여종)
• 국내에는 kth의 baas.io가 유일함.
• 내가 만드는 서비스의 성격에 맞는 서비스 선
택이 중요.
13년 3월 28일 목
37. 맺으며...
• MBaaS라는 클라우드형 모바일 백엔드 서비스
는 잠깐 지나가는 유행일까? 개발 방식의 변화
를 주는 패러다임의 전환일까?
• 모바일 앱 개발자들은 MBaaS를 이용함으로 자
신의 부족한 백엔드 기술을 보충할 수 있을까?
• 국내 baas.io는 모바일 앱 개발자들의 선택을
받을 수 있을 것인가?
13년 3월 28일 목
38. 참고자료
• MBaaS Mind Map
• baas.io
• 글로벌트랜드 클라우드 컴퓨팅 (신현석, 정우진 공저)
• GCM, APNS, MPNS
• 카산드라 완벽 가이드 (에벤 휴잇 지음)
• 몽고 디비 인 액션 (카일 뱅커 지음
• Parse, Sencha.io, Kinvey, StackMob, ACS
13년 3월 28일 목
39. 연락처
• 최명진 PD choi.myungjin@kt.com
• support@baas.io
• twitter: @baas_io
• facebook: http://www.facebook.com/
groups/baas.io/
13년 3월 28일 목