RSS

BaaS가 제공하는 가치

16 8월

SaaS, IaaS, PaaS 등의 “as a service”로 끝나는 용어가 IT 필드의 사람들에게는 그다지 낯선 단어는 아닙니다. 하지만 ‘그게 뭔가요?’ 물어보면 어떻게 대답해야 할 지 당황스럽기도 한 단어이기도 합니다. 제 나름의 이해로 정리해보자면 다음과 같습니다.

  • SaaS (software as a service) 서비스로 소프트웨어를 ‘제공’한다는 의미는, 우리 웹 어플리케이션을 브라우저로 접속해서 소프트웨어를 사용하도록 서비스합니다는 것이죠. on demand software, asp 같은 것들이죠.
  • IaaS (infra as a service) 인프라는 IT인프라로 서버, 스토리지, 네트워크 등 ‘물리적’인 자원들을 서비스 형태로 제공하니, 그걸 직접 사서 “소유하지말고 이용하라”는 이야기네요. 아마존 AWS나 KT uCloudBiz 같은 게 이런 콘셉이 되겠습니다.
  • PaaS (platform as a service) 여기서 말하는 플랫폼은 Java VM이나 Ruby VM 같은 특정 소프트웨어 동작하기 위한 실행환경(runtime)을 가리키는 것 같네요. 소프트웨어를 개발할 때 소스코드의 저장소만 건내주면 서비스화 된 플랫폼이 그걸 가져가서 컴파일하고 빌드해서 실행까지 해주겠다는 의미로 보입니다. 예를 들면 구글의 app engine이나 heroku 같은 서비스가 이런 류인 것 같습니다.

간단할 뿐만 아니라 자의적인 개념 정리라서 수긍가지 않는 분들도 있겠습니다. 댓글로 의견 주시면 공부에 도움이 되겠습니다. 🙂

오늘 이야기 하려는 주제는 위 세가지 단어와 생김새가 비슷한 BaaS입니다. Backend as a service라고 풀어 쓰며 backend라는 것은 frontend라는 말과 대칭되는 개념입니다. 그럼 front와 back 어떻게 구분될까요? 그건 서비스를 제공받는 사용자입장에서 눈에 보여지는 면이 frontend이고 그 내부에 감춰진 것이 backend라고 보면 될 것 같아요. 예로 쉽게 전달하자면, 웹사이트를 생각해보면, html과 javascript, image같은 것으로 유저들의 웹브라우저에 보여지는 부분이 frontend이고 눈에 보이지 않는 웹서버, 어플리케이션서버, 데이터베이스 등은 backend 겠지요.

여기까지 읽으신 분들은 아마 “클라이언트-서버”라는 개념에서 클라이언트가 frontend고 서버가 backend라고 봐도 되는지 궁금하실 겁니다. 맞습니다. 그렇게 보면 될 것 같습니다. iOS나 android 앱을 개발한다고 칩시다. 그럼 이 단말에 들어가는 앱은 frontend 기술로 만들어 집니다. 하지만 iOS에서 로그인하거나 사진을 업로드하면 그걸 받아서 처리해주는 부분이 바로 backend 영역이고 java나 c#, php, python, ruby등 다양한 개발 환경이 존재합니다.

‘그래, 그럼 backend는 좀 알겠다. 눈에 안보이는 서버 쪽 프로그램들이란 말이지?’ 네 맞습니다. 이런 backend 프로그램을 ‘서비스’로 제공하겠다는 것이 바로 BaaS입니다. backend를 ‘소유’하지 말고 ‘사용’하라는 메시지가 담겨있는 것이죠. 소유하지 말고 사용하라는 말은 as a service 사업모델의 기저에 깔려있는 철학같은 것입니다. 이 말은 소유의 종말로 번역된 Jeremy Rifkin의 저서 ‘The Age of Access’의 주제와 맥을 같이 합니다. “서비스 제공자가 모두 준비해 두었으니 접속해서 사용하시면 됩니다.” 이게 BaaS사업자들이 돈벌기 위해 제공하는 ‘가치 제안’입니다.

그러면, 이런 backend 기능들이 뭐가 있는지 구체적으로 들어가 볼까합니다. 우리동네 착한 가게를 추천해주는 모바일 앱을 하나 만든다고 해봅시다. 그러면 만들어야 할 사용자 스토리를 생각해보면

  • 사용자는 우리 동네에서 착한 가게 목록을 볼 수 있어야 한다.
  • 로그인한 사용자는 우리 동네의 착한 가게를 등록할 수 있다.
  • 로그인한 사용자는 우리 동네 착한 가게에 대해서 평가를 할 수 있다.
  • 로그인한 사용자는 착한 가게에 체크인할 수 있다.
  • 관리자는 불량사용자들의 사용을 제한 할 수 있다.

이런 사용자 스토리가 있다고 가정해보면, 단말에서 처리할 부분이 있는 반면 서버에서 처리해줘야 할 내용들이 있습니다. 느슨하게 구분해보면 이렇게도 가능하겠지요.

  • 단말
    • 단말의 현 위치를 기준으로 서버에 착한 가게 목록을 요청한다.
    • 사용자들에게 로그인 정보를 받아서 서버에 요청한다.
    • 착한 가게 사진을 찍어서 서버로 업로드 요청한다.
    • 착한 가게에 체크인 정보를 서버로 요청한다.
  • 서버
    • 로그인 정보를 받아 합당한 유저인지 판단하여 로그인 성공여부를 알려준다.
    • 관리자인이 일반 사용자인 지 판단하여 권한을 제한한다.
    • 회원가입한다.
    • 특정 위경도 주변에 있는 POI 목록을 보내준다.
    • 업로딩 된 사진을 파일 저장소에 저장한다.
    • 체크인 정보를 DB에 저장한다

실제 상황에서는 이 보다 훨씬 다양한 내용들이 있을 수 있겠지만 이 정도로 정리하고 진도를 나가보겠습니다. 서버에 해당하는 스토리를 처리하기 위해서는 backend 프로그램을 개발해야 하는데, 보통 웹 개발자, 서버개발자들이 담당하게 됩니다. backend 개발에 소요되는 비용은 일반적으로 frontend 개발에 드는 비용을 훨씬 상회하지요. 유저의 증가에 따른 확장성까지 고려한다면 이 비용은 더욱 가파르게 상승하게 됩니다.

BaaS가 해결하고자 하는 것은 무엇일까요? 바로 위에서 말한 backend 개발 비용을 획기적으로 줄여보자 것이지요. backend 서버 로직 중에 공통으로 많이 쓰이는 것들이 뭐가 있을까요? 다음과 같은 것이 떠오르는 군요.

  • 회원관리
  • push notification
  • 클라우드 기반의 파일 시스템

이 외에도 더 많이 생각해볼 수 있겠습니다. BaaS가 이런 backend 기능을 모아서 비교적 쉽게 frontend에서 사용할 수 있는 API와 SDK를 제공한다면, 단말개발자들은 서버 개발자 없이도 풍부한 기능의 앱을 만들 수 있지 않을까요? 서버 개발자들도 매번 똑같은 바퀴를 새로 만들 필요 없이, 서비스별 차별화 요소에 더욱 집중할 수 있는 여유를 만들 수 있겠습니다.

parse.com website

parse.com website

parse.com 이라는 구글 출신의 엔지니어들이 만든 BaaS업체가 있습니다. 다양한 기능을 제공하고 SDK까지 제공하고 있기 때문에, iOS/Android 개발자라면 누구나 쉽게 push메시지를 보낼 수 있고, 간단한 key-value 형태의 데이터를 서버에 저장할 수 있으며, 파일을 공유할 수 있게 되었습니다. 이런 API 사용에 초반에는 비용이 없습니다. 무료로 시작할 수 있고, 특정 사용량을 넘어서게 될 때에 비로소 과금하게 되는데, 이 역시 쓴 만큼만 비용을 내는 합리적인 가격체계를 갖추고 있습니다.

BaaS는 단말 개발자들에게 서버개발자 없이도 멋진 앱을 만들 수 있는 자유를 줬습니다. UX/UI에 더욱 집중하고 나머지 뒷단의 일은 BaaS에게 맡기세요. 게다가 서비스가 어느 정도 커져서 시장에 반응이 나타날 때까지 무료로 해볼 수 있다는 점이 무척 매력적이네요.

국내에서도 이러한 BaaS서비스를 준비하고 있는 업체들이 있습니다. 이들에 대한 이야기는 다음 포스팅에서 이야기 해보겠습니다.

baas.io

baas.io

최피디 드림

 

Advertisements
 
댓글 21개

게시자: 켬 2012년 8월 16일 in BaaS

 

BaaS가 제공하는 가치”에 대한 21개의 응답

  1. nanhapark (@nanhapark)

    2012년 8월 16일 at 9:16 오전

    좋은 정보 감사드립니다. 좋은 하루 되세요. 🙂

     
    • 최피디

      2012년 8월 16일 at 9:29 오전

      감사합니다. 🙂

       
  2. 유환수

    2012년 8월 17일 at 5:07 오후

    좋은 글 감사합니다. 한국 BasS 회사도 기대됩니다.

     
    • 최피디

      2012년 8월 17일 at 5:08 오후

      감사합니다. 한국에서도 좋은 서비스가 나와서 개발 생태계에 도움이 될 수 있다면 좋겠습니다. 🙂

       
  3. 황정현

    2012년 8월 20일 at 4:12 오후

    좋은 내용 잘보고 갑니다. ^^

     
    • 최피디

      2012년 8월 20일 at 4:16 오후

      부족한 BaaS 글에 관심 갖는 분들이 있어서 기쁘네요~! 감사합니다. 좋은 하루 보내세요!

       
  4. 박태준 (@TJ__Park)

    2012년 8월 21일 at 4:34 오후

    BaaS 개념 정리 끝~~ 쉽게 잘 풀어서 이해하기 쉬웠습니다.!! 다음 편도 기대되네요~~

     
    • 최피디

      2012년 8월 21일 at 5:15 오후

      ^^ 제가 아는 박태준님? 반갑습니다.

       
      • 박태준 (@TJ__Park)

        2012년 8월 21일 at 6:08 오후

        제가 아는 최피디님 반갑습니다. ^^

         
  5. 송류하나

    2012년 8월 23일 at 3:21 오후

    Baas에 맡기세요! 와닿네요ㅋ 다음 포스팅 기대합니다~ 빨리요 빨리~ ^^

     
    • 최피디

      2012년 8월 23일 at 3:23 오후

      하핫 감사합니다. 🙂

       
      • U쾌한쏭

        2012년 8월 27일 at 2:37 오후

        최피디님은 Baas 하면 연상되는 이미지는 뭔가요~?

         
      • 최피디

        2012년 8월 27일 at 2:45 오후

        알라딘 요술램프요… 그 속에 지니가 살거덩요.. ㅋㅋ 디자인 컨셉 잡고 계신가보군요! 🙂

         
  6. U쾌한쏭

    2012년 8월 29일 at 2:58 오후

    흐흐 어떻게 알았찌? ㅋㅋ 의견 감사용^^

     
  7. 김개 (@kimdogfoot)

    2013년 4월 6일 at 12:13 오전

    좋은 글 잘 읽었습니다. baas 쪽 검색하다가 역시 최피디 님 글이 나오네요 ㅎ
    검색 하다가 알게 되었는데 혹시 http://www.weplr.com/%EB%AA%A8%EB%B0%94%EC%9D%BC-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8D/baasbackend-as-a-service%EC%9D%98-%EC%A0%9C%EA%B3%B5%ED%95%98%EB%8A%94-%EB%AF%B8%EB%9E%98%EC%A0%81-%EA%B0%80%EC%B9%98/ 이 글 보셨는지요? 최피디님 글이 출처 없이 부분 쓰인것 같아서요. 다른 글도 아래위로 붙혀뒀는데 좀 이상하네요; 이미 알고 계실 것도 같은데 혹시나 해서 댓글 남깁니다.

     
    • 최피디

      2013년 4월 6일 at 12:16 오전

      네에 요즘 블로그 짜집기 해주는 그런 사이트가 늘어나고 있어서 좀 슬픕니다. 기계적으로 가져가는 것 같아요. 엉성하게 큐레이션하는데 몇 번 그러지 말라고 해도 계속 그러더군요. 🙂 또한번 이야기 하도록 해야겠습니다. 알려주셔서 감사합니다. ^^

       
  8. 이종은

    2014년 2월 23일 at 2:00 오후

    쉽게 설명해야할 일이 있어서 찾던 중에 최피디님 블그글이 처음에 나오더군요. 쉽게 잘 설명해주셨네요. 많은 도움이 되었습니다.~ 감사해요!

     
    • 최피디

      2014년 2월 23일 at 8:24 오후

      종은님 한동안 못 본거 같은데요. 요즘 어떻게 지내시나요? 요즘 titanium 어떤가요? 전 요즘 xdk new를 보고 있어요. ^^ 부족한 글인데 찾아주셔서 감사할 뿐입니다. 🙂

       
  9. 이종은

    2014년 2월 25일 at 3:24 오후

    요즘 Titanium은 예전에 비해 개발 환경이 많이 좋아졌어요.^^ 해외 개발자들이 만든 써드파티 도구들이 훌륭합니다.~ 이 바닥 좁으니 곧 만날 일이 있겠죠.:)

     
  10. Woori Bae

    2016년 12월 16일 at 9:39 오전

    좋은 글이네용~ 페이스북에 담아갑니다~ 감사합니다~

     

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

 
%d 블로거가 이것을 좋아합니다: