프로젝트 소개

프로젝트와 비슷한 포지션의 비시바시(좌) 컴온 베이비(우)
프로젝트는 베타 릴리즈 상태로 사내에서 잠정 중단 된 상태이다-현재 해당 프로젝트를 진행했던 인원 전원이 다른 프로젝트에 배속, 퇴사 등으로 인하여 팀이 흩어져 있으며, 사실상 프로젝트가 와해되어있는 상황이다.
- 프로젝트: A Project
- 플랫폼: 아케이드 업소용 - 윈도우즈Windows / PC 플랫폼
- 기기: 커스텀 PC / 터치 스크린Touch Screen
- 개발 기간: 2009. 06. ~ 2010. 05. (12 개월)
- 개발 인력: 약 110 M/M (월 평균 약 9 M/M, 최대 인원 Full Time: 9, Part Time: 3)
- 상태: 베타 릴리즈Beta Release / 프로젝트 잠정 중단Hold
잘 된 부분
프로젝트 초창기에는 개발 프로세스라는 형태가 공식적으로 존재하지는 않았다. 나름 게임 개발 업계에서 십 수년간 몸 담은 사람들이 경영진에 포진하고 있고, 마니아 층을 형성한 게임을 제작하고 판매, 온라인 게임 개발 발매도 한 견실한 업체였음에도 불구하고, 프로젝트 관리에 대한 부분은 거의 전무하였으며, 초창기 개발 현장에서 보여지는 주먹구구식 개발 환경이 난립하는 회사 상황에서 팀 내의 개발 프로세스를 확립하는 일은 그리 쉬운 일은 아니었다.
팀 내에 개발 프로세스를 도입 할 때의 팀원들의 저항(그런 것 없이도 우린 잘 해왔는데? 라는 식의 오만)이 있을 것이라 쉽게 예상되었기 때문에, 팀 내에서 뜻을 가지고 있는 프로그램 - 게임 디자인 파트에서 먼저 프로젝트에 필요한 의사소통 라인을 만들었다. 회의 및 개별 면담 후, 개발 문서를 제작 이를 SVN을 이용하여 일괄 배포하였고, 지속적으로 수정하고 재배포 함으로써 개발 중 발생하는 커뮤니케이션 문제를 억제할 수 있는 환경을 만들었다. 그리고 개발 중 발생하는 이슈를 이슈 트래커Issue Tracker인 맨티스Mantis를 이용하여 모든 이슈 사항을 기록하였다.

개발 중 이슈 트래커로 이용한 맨티스
프로세스에 대한 전체적인 관리는 각 개발 파트(게임 디자인, 프로그래밍, 그래픽)의 팀장들이 각 팀원들에 대한 업무 관리를 진행하였다. 이를 뒷받침하기 위한 협업 개발 툴(개발 페이지, SVN,맨티스)에 대하여 별도 관리 담당자를 지정하여 팀원들이 개발 툴을 100% 활용 할 수 있도록 서포트 하였다. 별도로 제작된 개발 페이지에서는 개발 일정, 최신 개발 이슈 현황, 일일 빌드 현황을 개발 팀원 누구라도 손쉽게 확인 할 수 있도록 하였다. 매 주 정기 회의에서는 통계 처리된 업무 진척 상황을 보여줌으로써 객관화 된 프로젝트 진척 상황의 공유가 가능하도록 하였다.
리소스 관리 및 배포
프로젝트 진행 중 발생하는 모든 리소스는 SVNSubversion을 이용하여 관리/배포 하였다-팀 내 SVN을 도입 하기 이전에는 메일과 공유 폴더를 이용하여 리소스가 관리되고 있었다. SVN에서 프로그램 소스 뿐만 아니라 모든 문서, 그래픽 및 사운드 리소스, 심지어 일일 빌드 결과물까지 통합적으로 관리하여 개발 도중 리소스를 분실하여 시간을 버리는 일이 없도록 하였다-물론 모든 리소스를 SVN에 관리하다 보니 개발 후반부에 SVN이 점차 느려지는 현상이 발생하기도 하였다.
개발 문서의 경우 수정 사항이 발생 할 경우, 해당 수정 사항을 반영한 문서를 바로 커밋Commit 하여 팀원들이 항상 최신의 문서에 접근 할 수 있도록 하였다. SVN의 기록Log 기능과 문서 상에 수정 이력, 그리고 해당 이슈Issue에 기록을 통하여 수정 사항에 대해서 팀원들이 놓치지 않도록 주의를 기울였다.
그래픽 리소스에 대해서도 기존 개인 작업 폴더 - 공유 폴더로 유지 되면서 버전관리 및 리소스 관리가 되지 않았던 부분을 SVN에 통합시키므로써, 리소스 분실, 중복, 과거 내용을 덮어 씌우는 사고 발생이 줄어들었으며, 이는 프로젝트 수행 시간을 절약하는데 많은 역할을 하였다.
SVN을 관리하는 담당자가 배정되어, 팀원들에 대한 SVN 이용법 교육, 사용자 문제 해결, SVN 저장소 관리 등의 업무를 진행하였으며, SVN 이용에 대한 가이드라인을 만들어 공유하고, 해당 가이드라인에 맞게 관리 함으로써, 효율적인 업무 진행을 이끌어내었다.
또한 빌드 자동화 시스템을 도입하여, 전날 작업 된 결과물을 바로 다음 날 확인 할 수 있도록 하였다. 게임 디자인 담당이 매일 아침 빌드 된 게임을 테스트 하면서 일반적인 버그 및 실행 오류 등의 문제를 잡아내고, 이를 즉시 처리했기 때문에 프로젝트 후반까지 자잘한 버그로 인하여 고생하는 경우는 거의 존재하지 않았다. 모든 팀원들은 매일 새로운 빌드를 가지고 30분 ~ 1시간씩 이른바 ‘개밥 먹기’에 동원 되어 게임을 테스트 하고 문제 사항을 수정하는 과정을 거쳤다.

빌드 자동화 프로그램으로 유명한 CC.net을 사용했다
프로토타이핑

초기 미니게임 프로토타입 중 하나
잘 되지 못한 부분

이런 책이 괜히 있는 것은 아니다 - 맨먼스 미신
어떠한 프로젝트든 마찬가지로 위험Risk은 존재하는 법이며, 이 프로젝트에서도 각종 위험 요소들이 존재하고 있었다. 가장 큰 문제는 프로젝트에 대한 경영진의 신뢰 여부였는데, 사실상 경영진과 팀원들의 중간 다리 역할을 하고 있어야 할 팀장의 커뮤니케이션 능력이 상당 부분 모자랐기 때문에 프로젝트는 항상 살얼음판을 걷는 형국이었다-최종적으로 베타 릴리즈에서 프로젝트가 잠정 중단 된 것도 같은 맥락의 일이었다. 나중에 확인 된 일이었지만, 경영진이 알고 있는 프로젝트와 개발 팀이 알고 있는 프로젝트는 전혀 다른 종류의 것이었다.
인적자원과 관련한 문제도 존재했다. 프로그램 팀장의 병역특례와 관련하여 훈련소 입소 문제는 프로젝트 시작 전부터 확인 된 문제였고 이를 회피 할 수 있는 상황이었음에도 불구하고, 아무런 조치를 취하지 않은 체 가장 중요한 프로젝트 막바지에 이르러 입소하게 하는 상황을 자초했다-덕분에 프로젝트는 프로그램 팀장의 군사 훈련 기간인 한 달 동안 진척 없이 표류하기만 했다.
잘못 설정한 프로젝트 진행 기간으로 인하여 제작 필수 인력을 타 팀에 빼앗기는 상황이 발생하기도 했다. 팀장이 무리한 일정을 가지고 다른 팀과 인력 교류를 약속했다가, 역시 프로젝트 막바지에 해당 인력이 팀을 옮기는 상황이 발생하였는데도, 이에 대한 저지, 혹은 대체 인력 충원 등의 대책은 나오지 않았고 프로젝트는 그냥 속행 되었다.
결과
Posted by Irene



