본문 바로가기

IT정보/동향/자료

web service layer

웹 서비스 읽기 - web service layer

웹 서비스를 분석하는 비주얼한 생각의 도구를 고민해 왔고 공개 강의나 블로그에서 이런 이야기를 간혹 하곤 했다. 그 중 하나가 얼마 전에 공개한 삼각형으로 아이템을 시각화하는 것이었다. 오늘 공개하는 것은 이보다 약간 복잡한 개념이다. 하지만 읽고 나면 너무 어렵다는 생각은 들지 않을 것이다.

웹 서비스는 단순히 디자인/개발/기획/마케팅으로 구분되지 않는 통합적인 모습을 갖고 있다. 때문에 유능한 웹 서비스 기획자는 백과 사전과 같은 지식을 쌓고 있어야 한다. 그런 지식은 시간과 비용을 투자하면 조금씩 나아진다. 그러나 지식이 아무리 쌓여도 그것을 이용하는 도구, 생각의 도구가 없다면 무용지물이다. 어려운 문제를 해결해야 하는 상황에서 그동안 쌓은 지식은 혼란과 부정확한 결정으로 이어지는 걸 흔히 본다.

이 문서를 잘 이해한다면 자신이 가진 지식을 지금보다 훨씬 유용하게 응용할 수 있다. 나는 컨설팅을 할 때 공부하고 생각하라고 조언하지 새로운 지식을 쌓으라고 말하는 경우는 거의 없다. 대부분의 사람들은 이미 충분한 지식이 있다. 다만 그것을 정리하여 올바른 결정을 하는 생각의 도구를 얻지 못했을 뿐이다. 이 문서 또한 평소 내 생각을 그대로 반영하고 있다.  

이 문서의 제목은 'Web service Layer'다. 레이어(layer)는 포토샵을 써 본 사람이라면 익숙한 단어다. 레이어는 '층'이나 '켜'로 번역할 수 있다. 포토샵에서 사용하는 레이어 개념에서 이 문서의 작성을 위한 아이디어를 얻었음을 밝힌다. 나는 오래 전부터 이런 생각의 방식으로 웹 서비스에 대한 통찰력(insight)을 얻으려 노력해왔다. 레이어로 웹 서비스를 층으로 쌓고 그것을 다양한 각도에서 읽을 때 웹 서비스를 조각 조각이 아니라 통합된 형태로써 이해할 수 있다. 이런 생각과 분석 방식이 여러분에게 도움이 되길 바란다.

이 글의 원문은 PPT(마이크로소프트 파워포인트) 파일로 되어 있으며 아래 링크를 통해 다운로드할 수 있다. 배포는 자유로우며 비상업적 목적 하에서 무상으로 사용할 수 있다. 문서에는 상세한 설명이 없다. 그러나 꼼꼼이 읽어 보면 무슨 말을 하려는 지 이해를 할 수 있을 것이다. 이해를 돕기 위해 스크린샷과 짧은 설명을 덧붙인다.  

::: Web service Layer (PPT, 150KB)

이 문서에 대한 질문은 이구아수 블로그에서 할 수 있다.


1. 웹 서비스 레이어 모델
웹 서비스 레이어는 웹 서비스의 주요 구성 항목에 대한 각각의 레이어(layer)를 형성한 후 그것을 쌓아 놓고 통합적으로 분석하는 것을 말한다. 각 레이어는 고전적인 의미에서 "웹 서비스 분석을 위한 카테고리"라고 이해하면 된다. 아래 그림에서는 그 카테고리를 "운영/인터페이스/콘텐트/애플리케이션/비즈니스"로 구분했다. 회사에 따라 이 카테고리는 바뀔 수 있다.

각 레이어는 4가지 주요한 속성을 갖는다. "투명도/면적/구멍/레퍼런스"가 그것이다. 특히 주목해야 할 점은 투명도(transparency)와 면적(demension)이다. 투명도는 10%에서 90%까지 설정할 수 있다. 만약 투명도가 존재하지 않는다면 웹 서비스를 레이어로 만든 후 통합적으로 관찰할 수 없게 된다. 마치 여러 장의 습자지에 서로 다른 그림을 그린 후 겹쳐두면 새로운 그림이 보이는 것처럼 투명도는 레이어의 가장 중요한 속성이다.

면적은 3차원으로 존재한다. X축, Y축, Z 축으로 면적(체적)이 존재하는데 이들은 자원(resource)과 전략(strategy)를 시각화한 것이다. 콘텐트 제작비가 5억 원이 든다는 이야기는 하기 쉽다. 그러나 콘텐트가 웹 사이트 안에 존재할 때 그것을 시각화할 때 관련 자원들과 트래픽, 매출, 회계상 평가에 의해 단지 5억 원이 아니라 그보다 훨씬 높거나 낮은 금액이 나올 수 있다. 이것은 비전문가가 계산하기엔 매우 힘든 일이며 대부분의 웹 기획자들도 정확한 시각화를 하기 어렵다. 여기서는 단지 레이어가  2차원적인 면적이 아니라 3차원의 면적(체적)으로 시각화되어야 한다는 것만 이해하면 된다.




2. 레이어 만들기 : 레이어 정의
개별 레이어를 만들기 위해 카테고리를 선정하고, 레이어의 이름과 색깔을 정한다. 카테고리는 회사나 분석하려는 웹 사이트에 따라 다르게 선정할 수 있다. 레이어의 속성(attribute)는 주요한 4가지 속성을 반영한다. 그러나 실제로는 훨씬 더 많은 속성이 존재한다. 이 문서에서는 어디서나 통용될 수 있는 4가지 속성인 "투명도/면적/구멍/레퍼런스"만 다뤘다. 구멍은 레이어에 뚫린 통로 혹은 채널을 말한다. 이 구멍을 통해 해당 레이어에서 직접 하위 레이어로 이동한다.

구멍(hole)을 만든 이유는 웹 서비스의 의외성과 불확정성을 시각화하기 위해서다. 대표적인 예가 세스코의 고객 질의응답 게시판이다. 엉뚱한 질문에도 성실하고 유머러스하게 답변함으로써 유명해 진 세스코 게시판을 많은 웹 기획자들이 연구 분석을 했다. 그러나 이것이 왜 발생했으며 어떻게 시각화해야 할 지에 대해서는 별다른 추가 연구가 없었다. 세스코의 고객 질의응답 게시판은 <인터페이스>라는 레이어에서 볼 때 구멍이다. 그러나 이 구멍을 통해 <콘텐트>라는 레이어로 사용자들이 직접 접근했고 결국 세스코 웹 사이트의 가장 유명한 콘텐트 풀(content pool)을 구성하게 되었다.

웹 서비스 기획자들은 이런 레이어의 구멍을 일부러 뚫어 둘 필요가 있다. 각 레이어가 자신의 역할을 충실히 하되 구멍이 없다면 어느 지점에서 흐름은 멈추고 만다. 구멍은 사용자의 흐름과 웹 서비스의 생존을 위한 혈류 흐름을 위한 역할을 한다.



3. 레이어 만들기 : 레이어 그리기
레이어를 그리는 방법을 설명하고 있다. 각 면의 길이와 깊이를 결정한다. 이것은 자원과 전략의 크기를 반영한다. 투명도는 10~90%까지 설정할 수 있다. 투명도가 높을수록 해당 레이어는 하위 레이어의 속성을 깊이 반영한다. 반면 투명도가 낮다면 하위 레이어는 잘 보이지 않게 된다. 해당 레이어의 완결성이 높아야 한다는 소리다. 투명도 0%나 투명도 100%는 애당초 존재하지 않는다.




4. 레이어 만들기 : 레이어 속성
레이어의 4가지 주요 속성을 정의한 후 시각화한다. 몇 개의 구멍(hole)을 통해 하위 레이어를 볼 수 있다. <운영(operation)> 레이어에서 뚫어 둔 구멍이 하위 레이어인 <인터페이스>의 어떤 부분을 직접 볼 수 있게 한다. "정말 편리하게 불편 사항을 말할 수 있는 고객 게시판이네"라는 소리를 고객에게 듣고 싶다면 바로 그 구멍이 <운영> 레이어에 존재해야 한다는 뜻이다.




5. 레이어 만들기 : 태그
태그는 레이어의 정보를 표현하는 속성이다. 비주얼의 단점은 다이나믹한 데이터를 처리하지 못한다는 것이다. 나는 태그 속성을 통해 레이어를 통하여 웹 서비스를 1차 분석한 후 연속적인 분석을 위한 실시간 데이터를 공급받고 싶었다. 해당 레이어에 해당하는 뉴스 클리핑이나 회사 내부 다른 부서의 관련 정보를 RSS로 공급받을 수 있는 태그 속성을 추가했다.




6. 레이어 만들기 : 다른 레이어 만들기
위와 같은 방식으로 카테고리에 따른 추가 레이어를 만든다.




7. 레이어 겹치기
만든 레이어를 겹친다. 아래 그림에서 보듯 레이어들은 투명도와 면적, 속성이 다르기 때문에 이것을 겹치는 순간 새로운 이야기(story)도 함께 발견할 수 있다.




8. 레이어 합치기
몇 개의 레이어를 합친다. 서로 다른 투명도와 색깔을 가진 레이어가 합쳐지면 아래 그림에서 볼 수 있듯 두 레이어 사이의 연관 관계를 찾을 수 있다. <운영> 레이어와 <인터페이스> 레이어를 합치면 웹 사이트 운영 상 문제점이 인터페이스로 인한 것인 지 알 수 있고, 혹은 인터페이스가 운영에 대해 어느 정도 책임과 역할을 수행해야 하는 지 설명할 수 있다.




9. 적용과 보기
만들어 진 레이어를 최초의 레이어 모델에 적용시키면 아래 그림과 같은 웹 서비스 레이어를 얻을 수 있다. 이제 분석을 해야 한다. 분석을 위해 가장 손쉬운 도구인 화살표를 사용한다. 목적에 따라 상,하,좌,우로 진행되는 화살표를 레이어에 삽입하면 레이어를 통한 새로운 이야기(story)를 발견할 수 있을 것이다.




10. 위에서 아래로 보기
레이어를 위에서 아래로 보는 전형적인 분석법이다. 다층화된 웹 서비스의 구조와 인터페이스, 현황을 이해하는데 도움이 되는 기본적인 분석 패턴이다. 서비스가 잘 만들어졌나? 인터페이스는 콘텐트를 잘 표현하고 있나? 애플리케이션은 잘 숨겨져 있나? 우리 사이트의 브랜드는 어디 쯤에 있나? 이런 질문에 답할 때 화살표를 위에서 아래로 그은 후 레이어가 어떻게 보이는 가를 통해 분석을 하면 된다.




11. 대각선으로 보기
대각선으로 보는 방법은 레이어를 측방으로 통과하며 새로운 이야기를 찾는 방법이다. 대각선 보기는 어떤 사건(issue)이 웹 사이트에서 발생했을 때 그 이유와 대안을 찾을 때 유용하다. 사건과 웹 사이트의 어떤 내용이 직접적으로 관련되며 간접적으로 영향을 끼치고 있는 가를 파악할 때 약간 동적인 보기 방법인 대각선으로 보기는 훌륭한 대안을 제시해 줄 것이다.




12. 자유 곡선으로 보기
자유 곡선으로 보기는 웹 사이트에 대한 통찰력을 얻는데 매우 유용한 방법이다. 아래 그림에서 볼 수 있듯 각 레이에서 중요한 포인트를 찾고 그것이 다른 레이어와 어떻게 연결되어 있는 지 선을 연결시키며 분석, 판단하는 기법이다. 이 기법은 웹 사이트에 대한 깊은 통찰력을 얻고 싶은 사람에게 적절하다. 그러나 각 레이어에 대한 이해와 레이어 간 관계에 대한 이해가 부족할 경우 부정확한 답을 추론하게 되므로 충분한 학습과 이해력이 전제되는 까다로운 분석 기법이다.




이 문서를 쉽게 이해하려면 풍부한 예제를 참조해야 한다. 시간의 부족으로 예제를 기술하지 못한 점은 아쉽게 생각한다. 그러나 문서와 관련 설명을 정독한다면 어떤 사람에게는 웹 서비스 분석과 대안 제시를 위한 좋은 도구가 될 수 있으리라 생각했다. 나는 이 레이어 개념으로 과거에도 많은 웹 서비스를 기획, 분석했고 현재는 컨설팅을 시작할 때 해당 웹 서비스나 웹 사이트에 대한 초기 분석에 이용하고 있다. 최고의 분석 방법은 아니지만 이런 비주얼은 누구나 현재 웹 사이트에 대한 현황을 쉽게 이해할 수 있도록 한다. 그리고 복잡한 듯 보이는 문제의 핵심에 쉽게 접근할 수 있도록 한다.

비주얼은 폼 나라고 만드는 것이 아니다. 100 장의 문서를 10 개의 그림으로 표현할 수 있다면 그보다 더 좋은 일은 없다. 만약 이 글을 읽는 사람이 웹 서비스를 기획하고 있다면 지금 당장 자신의 서비스를 레이어로 재정리해 볼 것을 권한다. 그리고 시간이 된다면 이것보다 훨씬 유용하고 편리하며 직관적인 비주얼을 만들어 볼 것을 강력히 권한다. 누군가가 만든 것을 배우고 익히는 것보다 자신이 직접 만드는 것이 성장에 훨씬 큰 도움이 된다. 이것은 내가 웹 서비스 레이어를 직접 만든 이유이기도 하다.

(from : I-guacu ONLY)