(NDC2014) 쉽게 따라 할 수 있는 꽤 훌륭한 유저 동향 분석 시스템
http://ndcreplay.nexon.com/NDC2014/sessions/NDC2014_0052.html#c=NDC2014&k%5B%5D=%EC%9C%A0%EC%A0%80
1. 유저는 우리와 다른 의미의 전문성을 가지고 있다.
- 컨텐츠를 개발하는 사람과는 다른 시각으로, 게임을 많이 플레이하기 때문이다.
- 개발자가 해결하지 못한 문제를 유저가 해결해서 커뮤니티에서 공유하는 경우도 있다.
- 따라서 유저의 동향을 분석하는 것은 매우 중요하다.(홈페이지 게시판, 커뮤니티 사이트 등)
- 인터넷 커뮤니티들에서 동향을 파악하는 것은 객관적이고 가장 쉬운 방법이나, 편향적인 정보는 배제해야 한다.
2. 동향 분석 시스템 개발
- 요구사항
> 커뮤니티 반응 확인을 쉽게 할 수 있도록
> 모니터링을 하지 않는 사람들도 유저 동향을 살필 수 있도록
> 패치 후 문제 발생이나 유저 동향에 대해 빠른 실시간 피드백을 받을 수 있도록
- 핵심 목표
> 동향 분석 단계 : 사이트 - 게시판 - 글 검색 - 글 읽음 - 의미 있는 정보
> 위의 단계를 거치는 시간을 단축시켜주는 도구를 개발하는 것
> 수 많은 개발 욕심을 줄이고 위의 핵심 목표에만 집중
- 사이트-게시판 단계 시간 줄이기
> 유저 의견이 주로 소통하는 게시판만을 선정하여 작업을 진행(자유, 공략, 팁 등)
> 크롤러는 각 사이트 별로, 네이버는 각 카페별로 한 개씩 동작하면서 게시글을 수집
> 크롤러가 반복해서 동작하는 간격, 게시판 별로 몇 페이지까지 수집할 것인지를 조절해서 이 크롤러를 동작시켜 게시물을 수집(놓치는 게시물이 간혹 있는데
이 부분은 너그럽게 놓았다.)
> 수집된 글은 어떤 사이트, 어떤 게시판들인지, 가장 최근 수집시간은 언제인지 알 수 있다.
> 전반적인 UX는 업무에서 주로 사용하는 outlook 방식을 차용
- 게시판-글 검색 단계 줄이기
> 인덱스 문제(검색을 도와줄 검색 엔진)
ㆍMy SQL Full Text Engine : 간단한 쿼리를 이용할 때는 문제 없었으나, 다른 인덱스와 복합 인덱스 설정이 잘 되지 않는 문제 발생,
실제 환경에서 성능 문제 발생해서 제외
ㆍLucene : 형태소를 이용하여 검색 > 그러나 형태소에 대한 이해가 부족하여 제외
ㆍSphinx N-gram : 설치형 프로젝트, 몇 가지 설정을 통해 My SQL과 쉽게 연결하여 인덱싱 가능
- 글 검색-글 읽기-의미 있는 정보 단계 줄이기
> 가장 핵심적인 부분이며 가장 어려운 부분
> 사람보다 기계가 더 잘 할 수는 없다.
> 한 사람이 Gardening 작업을 수행 : 키워드 관리 작업
> 평소에 관심 있을 것 같은 상시 키워드(버그, 버그 발생 주요 키워드, 팅, 렉, 최적화, 과거와의 비교, 패치/점검 등 문제점 관련),
패치마다의 관심사 같은 시즌별 키워드(각 패치의 업데이트 내용, 캐릭터나 스킬, 던전 등)를 등록
> 시즌별 키워드는 패치날 아침에 작성하는 편
> 성의글(분석/제안/소감)
> 상위 키워드 속에 하위 키워드가 있는데, 하위 키워드만을 클릭하여 그 키워드만 단독으로 쿼리를 요청하거나
상위 키워드를 클릭하여 하위 키워드를 한 번에 OR 방식으로 요청할 수도 있게 제작
> N-gram 검색 활용법 : 해당 분류의 글에 자주 언급되는 단어를 키워드로 등록한다.
(버그발생을 예로 들면, 나만그 = 나만그래, 나만그러냐, 나만그러네, 나만그런가 / 나만안 = 나만안되나, 나만안되냐, 나만 안뜨냐)
- 처음에는 게시판별 글 검색만이 목적이었으나, 키워드별 검색이 생기자 많이 편해짐
- 피드백을 통한 편의기능 추가
> 즐겨찾기 기능
> 게시글에 대한 메모기능
> 게시글에 대해 정보를 공유할 때 필요한 태그기능 > 태그하면 입구 모니터에 서비스된다.
> 태그가 표시된 글은 짤방(이미지)을 삭제하도록 추가 > 관리자는 보여짐
> 게시판을 더럽히는 글, 도배글을 제거할 수 있는 휴지통
- UI 문제
> 개발자만 2명이라 그래픽 파트가 취약
> 웹에서도 데스크탑 UI를 쉽게 사용가능한 자바스크립트 프레임워크를 사용
> Sencha 제품 활용 : cross browsing, 강력한 기능들, 안 되는 게 없다.
> 데스크탑 프로그램처럼 보일 수 있는 컨트롤이 있으며, UI 작업이 필요없고, 모바일까지 적용이 가능
> Sencha로 모바일 버전까지 개발
3. 결론
- 내가 보고 싶은 반응을 빠르게 한 곳에서 볼 수 있다.
- 특별한 노하우 없이 누구나 현재 커뮤니티 분위기를 알 수 있다.
- 기존 시스템에서 확인할 수 없는 버그나 문제점을 알 수 있다.
- 정확한 해결책을 가지고 있거나 실마리를 제공한다.
- 예상치 못한 문제를 빠르게 감지할 수 있다.
4. QnA
- 개발 기간은? : 과정을 알고 있는 2~3명의 개발자가 1~2달 소요
- 크롤링할 때 수집하는 정보 : 링크(html)를 그대로 DB에 넣어 html 그대로 표시]
- 인덱싱이 모자란 이유 : 목적상 날짜도 검색해야 하는데, MySQL full text 엔진은 복합 인덱스(예를 들어 날짜와 텍스트)를 잡게 되면 대단히 느려진다.
'컨퍼런스 노트 > NDC' 카테고리의 다른 글
(NDC2014) 바라는 대로 라이터가 쓰게 만드는 시나리오 디렉팅 기법 (0) | 2015.01.18 |
---|---|
(NDC2014) 소울로 살펴보는 하이 퀄리티 모바일 콘텐츠 제작기 (0) | 2015.01.16 |
(NDC2014)시나리오라이터의 과거와 현재, 그리고 미래 (0) | 2015.01.10 |
(NDC2014) 온라인 게임의 창발적 플레이 디자인 (0) | 2015.01.06 |
(NDC2014) 왜 조직 문화 개선은 자꾸 벽에 부딪히는가? (0) | 2015.01.04 |