본문 바로가기

사례 연구

(Case Study) SEGA 는 JIRA, Confluence를 어떻게 사용할까요 ?

(사례연구) 게임개발 소프트웨어 Sega



Morgan Friberg사례 에 대해 이야기 합니다. (2010년 4월)



Formerly known as: Secret Level
Location: San Francisco, CA
Industry: Video games
Employees: ~80
Tools used: JIRA, Confluence & FishEye


샌프란시스코에서 열린 Game Developer Conference 2010 의 참가회사 중 하나로 여러 게임개발회사 고객을 인터뷰하였습니다.

샌프란시스코 Sega 스투디오는 이전에는 공식적으로 Secret Level 로 알려져 있었는데 이번에 채팅을 나눌 기회를 가지게 되었습니다.

1999년에 설립되어 Xbox용 America's Army: Rise of a Soldier 게임과 Final Fight: Streetwise and Karaoke Revolution 을 릴리스 한 Secret Level 입니다.
2006년도 3분기경에 Sega는 Secret Level 을 인수한 것을 인정하였습니다.
Sega는 그들의 기술에 감탄하였고 그 시작은 Golden Axe Beast Rider 였습니다.
인수 후에, 게임개발 스투디오는 더 큰 역할을 하기 시작했습니다; 2년의 성장 과정 후 그들은 Iron ManGolden Axe을 PlayStation 3 과 Xbox 360 용으로 릴리스 하였습니다.
최근에는 블록버스터 무비인 아이언맨2의 릴리스에 맞추어 Iron Man 2 를 개발 진행하고 있습니다.

우리는 Sega 스투디오의 IT매니저인 Chris Sipe, 프로듀서 Mike Thyau , Buzzy Spain, CTO를 사무실로 초대하여 대화를 나눌 기회를 얻게 되었습니다.
이번 대화는 비디오와 대화기록으로 아래 공개합니다.

비디오 인터뷰



대화기록


Sega 스투디오 참석자에 대하여


누구이며 어디서 오셨는지 자기 소개 부탁드립니다.
저는 샌프란시스코의 SEGA 스투디오의 IT 매니저인 Chris Sipe 입니다. 거의 3년정도 근무해 오고 있습니다. 저희는 Secret Level로 알려졌었지요.
SEGA는 모회사이자 저희 게임 퍼블리셔(공급자) 입니다. IT 부서는 80명을 지원하기 위한 3명으로 구성된 부서입니다. 게임의 매일매일의 빌드를 관리하는 우리 빌드 관리자가 포함되어 있지요.

제 이름은 Buzzy Spain 이고, 엔진과 도구팀의 프로그래밍 엔지니어 매니저입니다. 1년 반정도 최근 개발 중인 게임 개발에 일해오고 있습니다.
전체적으로는 3년째 근무중이지요.

제 이름은 Mike Tyau 이고, 이곳 샌프란시스코 SEGA의 프로듀서 중 한명입니다.
또한 JIRA 버그 데이터베이스와 작업추적 데이터베이스의 관리자 중 한명이지요.
2년 좀 넘게 근무했는데, 프로덕션팀에 속해 있고, 모든 프로듀서들이 속해있죠, 책임 프로듀서, 주임 프로듀서 – 모든 사람들이 자신들의 작업을 제시간에 맞게 수행하는지를 추적하는 개발지원을 하고 있지요. 대략 7명 정도가 있지요.

여러분 사무실에 대해 말씀해주시겠어요?

대략 80명정도가 일하고 있습니다.
저희는 완전한 게임 개발 스투디오입니다. 그래서 디자인팀과 게임플레이팀, 오디오팀, IGC (In Game Cinematics) 팀으로 나뉘고, 그 외 엔지니어링 스태프가 있습니다. 물론 고객과 직접 대하는 운영팀과 지원팀을 포함하고 있습니다.

게임 개발


어떤 게임 플랫폼을 대상으로 하시나요?

저희 스투디오는 주로 XBox 360 과 Playstation 3 용 제품개발을 위해 작업하고 있습니다.
때로는 다른 플랫폼과 섞이는 경우도 있지만, 그것들도 결국은 대상이 되는 플랫폼이라고 할 수 있겠지요.
런타임(Run Time)은 거의 C++ 을 지원하고 게임플레이 목적으로 일부분 스크립트 언어 종류를 지원하기도 합니다.
일반적으로 툴과 데이터 형식은 경우에 따라 XML 과 C# 입니다.
현재는 파이썬이나 자바, PHP를 지원하지는 않고 있습니다.

여러분 팀에서는 어떤 소프트웨어 개발 방법론을 사용하시나요?

가장 가까운 것은 아마도 Scrum 이라고 볼 수 있습니다. 상당히 비공식적입니다. 솔직이 [어떤 특정 방법론] 하나를 사용한다고 말하고 싶지는 않습니다..

게임개발을 위한 소프트웨어 개발도구 는 얼마나 중요한가요?

좋은 도구 없이는 게임을 만들 수 없을 것입니다.
팀이 작업하는 속도이자 신속성이라고 할 수 있습니다. 좋은 툴을 가지고 있고 그 툴의 디자인을 누군가에게 바꾸게 하면, 그 사람을 변화시킬 수 있습니다.
다시 말해, 툴이 없다면, 정체되는 것이지요. 데이터를 재생산할 수도 없고, 디자인팀이 캐릭터나 애니메이션 혹은 다른 어떤 것을 충분히 빠른 수준으로 변경할 수도 없습니다.

게임분야에서 소프트웨어 개발의 변화는 어떤가요?

제 생각에는 게임분야는 "서너명이서 둘러 않아 미친 사람처럼 코딩 하는 시기"에서 벗어나고 있다고 생각합니다.
이것은 인터넷 산업의 다른 비즈니스 소프트웨어 개발 프로세스 관점에서 마찬가지로 하나의 주류로 가고 있는 것이지요.
또한 사용자 대신 예술가적 요소를 필요로 하는 요소가 게임에서는 있습니다. 본인이 3D와 2D 작업을 하고 그것이 일반적인 사용자가 비즈니스 UI에서 필요로 하는 일반적인 수준과는 다른 것입니다.
그러므로, 은행 소프트웨어 개발에서 발생하는 것과 같은 동일한 모습은 가지게 되지 않을 것입니다.
그리고 다른 여러 변화가 있지요; 새로운 기술, 하드웨어 발전, 이제 더 많은 파이프라인과 더 낳은 이미지로 작업을 할 수 있는 것이지요.

Iron Man 2 프로젝트는 얼마나 되었나요?

제작 사전작업은 단지 6개월 이었고, 실제 제작단계는 1년이 되었는데 이것은 비디오 게임을 만드는데 있어 상당히 빠른 것입니다.
다른 개발 회사들은 대략 4년 정도가 소요되지요.
이것이 어쩌면 영화와 같이 가려는데 있어서의 단점이기도 합니다.
영화 쪽에서 빠르게 요청한다면 그대로 맞출 수 밖에 없지요.
제한된 시간 내에서 저희는 좋은 게임을 만들었습니다.

Atlassian 툴 사용



어떻게 Atlassian 툴들이 SEGA 에서 사용되게 되었나요?

예전 사장, Jerry Gordon, 이 JIRA와 다른 Atlassian 툴에 대해 들었었습니다.
우리는 오래된 프로젝트 중 하나에 대해 사용할 수 있었던 적절한 버그 데이터베이스가 무엇인지 찾았었지요.
저는 사실 이전 회사에서 JIRA를 일부 사용했었기 때문에 사용자로서의 경험과 약간의 워크플로우를 작업했었습니다.
그래서 DevTrack과 대비해서 JIRA를 평가해 달라는 요청을 받았었고, 결국에는 두가지 모두 목적에 적합하였었습니다. 그렇지만, JIRA가 더 매력적인 것은 가격 차이 뿐만이 아니라, 사용하기 쉬운 편리성과 단순함 이었습니다.
웹기반이기 때문에 별다른 어플리케이션을 구동시킬 필요 없이 바로 버그를 확인해 볼 수 있는 것이지요. 이것은 사용하기 용이하였고 커스터마이즈도 가능했었습니다.

현재 어떤 Atlassian 툴을 사용하시나요?

우리는 기업용 위키(enterprise wiki) 로 Confluence를 사용하고 있고, JIRA는 버그 및 업무 추적 시스템과 버그 데이터베이스 추적 시스템으로 사용하고 있습니다.
버그추적(bug tracking) 시스템은 미국 SEGA, 모회사와 SEGA 유럽, 그리고 다른 자회사와 함께 전사적으로 사용되고 있습니다.
우리는 JIRA를 버그추적으로 사용하는데, 다른 부서에서는 프로젝트추적(project tracking) 목적으로 사용하는 곳도 있습니다.
사실, JIRA를 프로젝트 관리도구로 사용할 필요가 있지만, 아직은 그 정도까지 활용하지는 못하고 있지요.

얼마나 많은 사람들이 회사에서 저희 제품을 사용하나요?

모든사람이 Confluence를 사용하는데, JIRA의 경우는 모두는 아닙니다. 그렇지만 모두가 Confluence를 저희의 주요 정보 저장소르 인식하고는 있습니다.
게임플레이팀장은 위키를 너무 좋아해서 보고서 모두를 Confluence 페이지로 매일 블로그 합니다.
그래서, 어떻게 사용하게 되었는지는 모르겠지만, 그것은 팀의 리더에 따라 다른 것 같고, 어떻게 툴을 사용하고 싶어하는지에 따라 다른 것 같습니다.
IT 관리자로서, 사람들이 사용하는것에 대해 매우 기쁩니다. FishEye의 경우는 Perforce와 연동하여 버그를 찾고 추적할 때 일부 사람들에게 정말로 극도로 도움이 됩니다.

JIRA에 얼마나 많은 이슈와 프로젝트가 관리되나요?

우리가 JIRA를 처음 사용했을 때는 3,4개의 프로젝트가 있었습니다.
회사가 커져가면서 프로젝트가 늘어났지요. 현재는 1개의 메인 프로젝트인 Iron Man 2 에 대해서만 사용하고 있습니다.
저는 유연성과 사용의 편리성을 좋아합니다. 얼마나 새로운 프로젝트를 시작하는데 편리한가를 말입니다. 그래서 JIRA를 통해 5분만에 프로젝트를 시작하여 사용한다고 하면 사람들이 믿지 않습니다.

어떤식으로든 Atlassian 제품을 커스터마이즈하셨나요?

제 생각에, 대부분의 커스터마이즈 작업을 워크플로우(workflows) 설정을 하면서 했던 것으로 여겨집니다.
설정하는데 약간의 공부가 필요했지만요. 저는 JIRA가 워크플로우 설정이 매우 쉽다고 생각합니다.
어렵지 않지요. JAVA를 배우거나, 다른 스크립트를 배울 필요가 없지요.
정말 쉬운 웹기반 도구입니다.
웹기반으로 운영하는 것은 정말 쉽고 좋습니다. 왜냐면, 사내 내부에서 뿐만이 아니라 원격으로도 사용할 수 있기 때문이지요.

게임개발 생명주기에서 툴이 어떻게 사용되나요?

각 개발팀은 Confluence와 JIRA를 작업추적에 사용하는 자신들의 방법을 가지고 있습니다.
각 팀은 제품을 서로 다르게 사용하기를 원합니다.
한 팀의 경우는 스케쥴로 사용하기를 원하고, 다른 팀은 자신들이 보기 원하는 차트 마일스톤 형태의 사용을 원합니다. 또 다른 팀은 JIRA에서 매일매일 하나하나의 모든 작업들이 추적되어 세부 정보를 통계내고 싶어합니다.
어떤 팀은 단지 캘린더를 원합니다.
그래서, Confluence와 JIRA의 사용 범위는 상당히 크다고 할 수 있습니다.
JIRA는 가장 상세히 사용되며, 전체 제품에 적용해 사용하기 시작했습니다. 이것이 우리가 버그를 추적하는 주요 방법입니다.

우리가 버그추적을 시작하기 전에, Confluence를 개발도구로 어떻게 사용할 지에 대해 이야기하기 시작했을 때, 우리는 Confluence를 그룹의 아이디어 저장소로서 혹은 실제 제품제작을 시작하기 전에 사전단계에서 필요한 것들을 구성해 나가는 목적으로 사용하였습니다.
그것이 처음 사용하기 편한 방법이었습니다.
디자인팀의 경우는 각자가 자신의 홈페이지를 가지고 있는데 부서에서 무슨일이 있는지 기록하는데, 저는 예전에 이전의 위키에서 여러 골치아픈 문제들을 느꼈었는데, Confluence의 장점은 한번 사람들이 사용하기 시작하면, 그것이 바로 중심이 되어 팀에서 무슨일이 있는지, 최근 프로젝트에서 무슨일이 있는지 찾는데 활용된다는 것입니다.
Confluence 이러한 것을 쉽게 할 수 있도록 도와줍니다.

Atlassian 제품과 연동하여 많이 사용하는 다른 외부툴이 있나요?

제품측면에서는 전적으로 Microsoft Project를 사용합니다.
JIRA를 사용하기 시작하는 시점에서는 좋은 연동 플러그인이 없어, 예전 사장인 Jerry Gorden이 직접 플러그인을 개발해 JIRA로 MS Project 데이터를 가져오거나 내보내게 처리하였었지요.
그것이 매우 훌륭하였고 큰 도움이 되었습니다.
그리고 또한 MS Project 외에도 연필과 종이, 엑셀 쉬트 등 다양하게 사용하고 있으며, Microsoft Project는 큰 그림에서 저희가 로드맵을 잡고, 타임라인을 구성할 때 사용합니다.

Atlassian 툴을 사용하려고 고민하는 다른 게임개발 회사에게 어떤 이야기를 해주고 싶으신가요?

매우 사용하기 쉽고, 기업용위키(enterprise wiki) 로서 Confluence와 JIRA와 같은 추적도구를 연동할 수 있는 곳에서는 같이 훌륭하게 사용할 수 있습니다.
매일 일어나서 JIRA에 로그인하고 "오케이, 무슨 버그가 일본에서 생겼고, 어떤 버그가 유럽에서 처리되었는지 혹은 다른 검증팀에서 처리하였는지 보자" 라고 이야기할 수 있는 것은 정말 쿨하다고 말할 수 있습니다.

Confluence는 어떻게 사용하시나요?

문서(Documentation) 입니다.
우리가 사용하는 중요한 이유 중 하나이고 모든 문서화 작업의 시작입니다.
내부 보고서(신청서)에 대한 문서화 작업을 합니다. 게임뿐만 아니라 내부 보고서(신청서)를 포함해서 입니다.
우리가 아는 한, 2,3명의 중요한 프로그래머가 그러한 보고서(신청서)를 시작하는데, 시작한 사람이 없더라도, 일단 시작이 된 문서화된 정보는 계속 남아있다는 것이 매우 중요합니다.

게임 개발은 또한, 게임에 대한 스펙 기술 문서를 작성하는 것이 중요합니다. 그래서 우리는 훌륭한 PDF 내보내기 기능을 이용하여 모든 튜토리얼과 문서를 Confluence에서 만들어내고 배포하고 업데이트 합니다.

(골드피처 주)

SEGA는 저희에게도 익숙한 회사인데, 내부적으로 JIRA와 Confluence를 사용해 왔던 것은 이번 인터뷰 글을 통해 처음 알게 되었습니다.

이 인터뷰 글에서 이미 국내에서도 많은 회사들이 그런 것처럼, SEGA 또한 Microsoft Project와 JIRA를 같이 사용하고 있습니다.

Microsoft Project를 Top-down 방식의 프로젝트 관리도구라면, JIRA는 Bottom-up 방식의 프로젝트 관리 도구라고 할 수 있을 것이고 그렇다면 2개의 툴이 서로 각자의 장단점이 상충되는 것이 아니라 보완관계라고 할 수 있을 것입니다.

그러므로 Top-down 툴과 Bottom-up 툴을 같이 사용하는 것은 2개 툴을 사용하는 부담을 상쇄할 수 있는 장점을 가진다고 할 수 있을 것입니다.

현재 Microsoft Project 와 JIRA을 연동하는 플러그인으로는 상용의 The Connector – Microsoft Project IntegrationPOJ , Ceptah Bridge 가 있고 단순히 MS Project 파일을 JIRA로 Import 시켜주는 무료 플러그인 Jimex Plugin 이 있습니다.