SlideShare uma empresa Scribd logo
1 de 61
Baixar para ler offline
스크럼을 이용한 게임 개발
Agile Game Development with Scrum

Reid Lee
reid@socialinus.com
게임을 만드는 과정을 떠올려봅시다.
제일 먼저 뭘 해야 할까요?
!

기획을 먼저 할까요?
!

코딩은 기획이 끝나야 시작하나요?
!

테스트는 언제 해야 할까요?
!

기획이 중간에 바뀌면 어떻게 하죠?
지금 여러분은 ‘개발 프로세스’가 필요한 이유를 보셨습니다.
개발 프로세스는 절차를 이야기합니다.
이번에는 조금 다르게 묻겠습니다.

여러분이 만들고 있는 게임은 어떤 ‘개발 프로세스‘를 따르고 있나요?
모든 업무가 그렇듯이 소프트웨어 개발에도 프로세스가 있습니다.
폭포수 모델waterfall model

일의 흐름이 층을 이룬 폭포에서 물이 떨어지는 모습을 닮았어요.
요구사항 분석
설계
구현
테스트
유지보수
건물 한채를 지어봅시다.
!

- 거주자의 요구사항을 수집/분석하고
- 설계도를 그리고
- 미장하고 공구리쳐서 완성을 시킨 후,
- 마감이 잘 되었는지 확인합니다.
- 이후, 시공 업체는 지속적으로 유지보수하겠죠.
완공 된 아파트의 설계에 결함이 발견되었습니다.
부수고 다시 만들까요?
!

공구리를 치기 전에 설계가 완벽해야 합니다.
폭포수 모델은 공학 분야에도 잘 적용되어 왔습니다.
소프트웨어 개발에도 물론 문제 없습니다.
소프트웨어를 만들어봅시다.
!

- 고객 요구를 수집하여 기획서를 완성하고
- 코딩하여 구현 한 후,
- QA 테스트를 거쳐 완성.
- 이후 개발사는 지속적으로 유지보수합니다.
CRM, ERP...
폭포수 모델에 딱 들어맞는 프로젝트들입니다.
!

이들은 코딩을 시작하기 전에 설계가 완벽해야 합니다.
그렇다면...
(은근한 목소리로) 게임은

어떤가요?
게임은 기능이 아니라 재미를 설계해야 합니다.
!

기능은 누가 보아도 확실한 정답이 있지만,
재미는 보는 사람마다 다른 정답을 가지고 있습니다.
게임은 만들어 보지 않고 설계를 완성시키기 매우 어렵습니다.
지금까지의 개발 방법론으로는 문제가 해결되지 않습니다.
!

그 때,
소프트웨어 개발 전반에 걸쳐 새로운 바람이 불었습니다.
애자일 소프트웨어 개발 선언
!

우리는 소프트웨어를 개발하고, 또 다른 사람의 개발을 도와주면서 소프트웨어 개발의
더 나은 방법들을 찾아가고 있다. 이 작업을 통해 우리는 다음을 가치 있게 여기게 되었
다:
!

공정과 도구보다 서로의 상호작용을
포괄적인 문서보다 작동하는 소프트웨어를
계약 협상보다 고객과의 협력을
계획을 따르기보다 변화에 대응하기를
!

가치 있게 여긴다. 이 말은, 왼쪽에 있는 것들도 가치가 있지만, 우리는 오른쪽에 있는 것
들에 더 높은 가치를 둔다는 것이다.
게임에 빗대자면,
!

재미있는 게임을 만들기 위해 변화를 적극적으로 수용하고
더 많은 대화로 서로 협력하며 문서를 작성하기 보다 실제
로 작동하는 게임을 만들어 확인하자.
애자일이 가져다 준 변화
!
!

생산성이 향상되었다 ..... 87%
원하는 시점에 시장에 내놓게 되었다 ..... 86%
버그가 없어졌다 ..... 86%
비용이 절감되었다 ..... 63%

!
!
http://www.versionone.com/pdf/stateofAgiledevelopmentsurvey.pdf
애자일이 가져다 준 변화:
!
!
!
!
!
!
!
!
!

2005년
waterfall software .... 72%
scrum agile ..... 28%

2013년
waterfall software ..... 22%
scrum agile ..... 78%

!
http://yusufarslan.net/agile-and-scrum-really-better-waterfall
요구사항 수집

개발

피드백

출시/유지보수

폭포수 모델이 이전 단계가 완료되어야 다음 단계로 넘어갈 수 있었던 문제
가 있었던 것에 반해서,
!

애자일은 이 일련의 과정을 잘게 나누어 여러번 반복합니다.
그리고 개발 프로세스로 ‘스크럼’을 제시합니다.
스크럼의 핵심:
!

- 원활한 커뮤니케이션
- 반복 개발
- 테스트 가능한 결과물
자, 이제부터

스크럼을 게임 개발에 적용해서 차례대로 살펴봅시다.
제일 먼저 해야 할 것은 ‘프로토타이핑’입니다.
!

이 아이디어가 정말 괜찮을까?
머리속에 머물던 궁금증을 실제로 풀어보는 과정입니다.
!

프로토타이핑이 성공하면 드디어 프로젝트가 킥오프됩니다.
게임이 갖출 기능들을 모아봅니다.
!

- 브레인스토밍처럼 추상적인 단계가 아니에요.
- 기능을 구현하는데 걸리는 시간도 예측합니다.
- 기능을 목록Product Backlog으로 정리해보세요.

PLANNING
출시일을 계산합니다.
!

- 예측한 시간들을 모두 더합니다.
- 시간의 압박, 자금의 한계로 출시일을 당겨야 한다면,
- 낮은 우선순위의 기능들을 제거합니다.

FINAL
릴리즈를 구상합니다.
!

- 완전한 형태의 결과물들을 만들어 내는 시점입니다.
- 마일스톤으로 불리기도 합니다.
- 각 릴리즈의 기능을 목록Release Backlog으로 정리해보세요.

REL1

REL2

ALPHA

CBT

OBT

FINAL
릴리즈를 스프린트로 쪼갭니다.
!

- 스프린트는 짧게는 2주에서 길게는 1개월 정도로 잡습니다.
- 스프린트의 결과물은 완성된 형태로 동작하는게 중요합니다.
- ‘기능’을 ‘태스크’로 쪼개어 목록Sprint Backlog으로 정리합니다.

REL1

SP1

SP2

SP3

REL2
스프린트 플래닝Sprint Planning
!

- 지난 스프린트의 결과를 토대로 기획을 수정합니다.
- 스프린트에 완성시킬 기능을 태스크로 쪼갭니다.
스프린트 플래닝

1 2 3 4 5 6 ...
SP1

SP2
스프린트 리뷰Sprint Review

- 결과물을 테스트하고 피드백을 받습니다.
!

회고Retrospective

- 이번 스프린트에서 좋았던 점, 아쉬웠던 점을 이야기합니다.
- 다음 스프린트에서의 각오를 이야기합니다.
스프린트 리뷰 / 회고

1 2 3 4 5 6 ...
SP1

SP2
스크럼은 매일마다 커뮤니케이션을 합니다.
!

- 매일 스크럼 회의를 합니다.
- 한 명씩 돌아가며 한일, 할일, 애로사항을 이야기합니다.
- 하고 있는 일을 이야기하는게 아니에요.
- 일정에 지장을 주는 애로사항은 바로바로 꺼내놓으세요.

1
SP1
MS1

2
번다운 차트burndown chart
!

- 스크럼은 현재 작업의 진척 상황을 함께 공유합니다.
- 스크럼은 작업의 예측 완료 시각과 실제 완료 시각을 압니다.
- 예측에 비해 원활한지 문제가 있는지 쉽게 파악됩니다.

프로젝트 마감 시점에 남은 작업 시간이 0이 되는,
가장 이상적인 기울기입니다.
남은 작업 시간
(hour)

진행 일자
번다운 차트burndown chart
!

- 팀의 역량에 비해 너무 과도한 일을 하고 있나요?
- 다음 스프린트에서는 일정 예측에 조금 더 신경 써봅시다.

남은 작업 시간
(hour)

진행 일자
번다운 차트burndown chart
!

- 팀의 역량을 과소평가 한 건 아닌가요?
- 스프린트가 반복 될 수록 일정 예측은 점점 정밀해집니다.

남은 작업 시간
(hour)

진행 일자
여기까지 스크럼이 어떤 방식으로 동작하는지 알아봤습니다.
그런데 잠깐 고민해봅시다.
!
!
!
!
!
!
!
!

스크럼은 우리에게 무얼 강조하고 있는건가요?
스크럼이 추구하는 핵심 가치 세 가지를 다시 돌아봅시다:
!

- 원활한 커뮤니케이션
- 반복 개발
- 테스트 가능한 결과물
침묵은 위기, 서로 좀 더 이야기를 많이 하자.
기획 변경을 두려워하지 말자.
항상 개발중 개발중 개발중 하지 말고, 실제로 돌아가는 게임을 만들어보자.
스크럼은 사실 이런 가치를 실현하기 위한 도구 일 뿐입니다.
스크럼은 무엇이고 어떻게 하는 것인가를 알아보았습니다.
!

이번에는 스크럼이 프로젝트를 어떻게 변화시킬 수 있는지 살펴봅시다.
나는 누구인가 여기는 또 어디인가
!
!
!
!
!
!
!
!
!
!
!

팀원 누구라도 내가 지금 어느 위치에 서있는지 알 수 있습니다.
비전은 언제나 모두에게 동일하게 공유되어야 합니다.
전력 질주를 합니다.
!
!
!
!
!
!
!
!
!
!

스프린트와 같은 단기 목표는 전력 질주를 가능하게 합니다.
장기 목표만으로 진행되는 프로젝트는 갈수록 지치게 마련입니다.
스프린트 리뷰마다 목표 달성을 기념하는 파티를 해보세요!
야근 없이도 잘 굴러갑니다.
!
!
!
!
!
!
!
!
!
!
!
!

출시 전 철야 작업은 반드시 거쳐야 하는 통과 의례가 아닙니다.
지속적으로 출시에 포함 될 기능을 구상하고 일정을 쪼갭니다.
분할 정복Divide and Conquer은 일정을 준수하기 위한 효과적인 방법입니다.
눈총받지 않고 기획을 변경합니다.
!
!
!
!
!
!
!
!
!
!

무턱대고 일정 중에 기획을 변경하면 팀원들은 멘붕에 빠집니다.
기획의 변경은 스프린트의 결과물을 토대로 진행합시다.
팀원들의 공감을 받는 기획 변경은 프로젝트 성공의 청신호입니다.
장애물들을 각개 격파합니다.
!
!
!
!
!
!
!
!
!
!
!
!

스크럼 회의에서 가장 중요한 것은 작업 내용 공유가 아닙니다.
일정에 차질을 주는 애로사항을 팀에 공유하는 것이 가장 중요합니다.
프로젝트가 실패하는 큰 원인은 그 누구도 리스크를 이야기하지 않기 때문입니다.
순항중인지 폭풍우를 만났는지…
!
!
!
!
!
!
!
!
!

팀원들 모두가 프로젝트의 진행 상황을 잘 이해하게 됩니다.
잘 해내고 있는지, 혹시 암초를 만나서 기우뚱거리고 있지는 않은지…
번다운 차트는 프로젝트의 진행 상황을 한 눈에 보여주는 최고의 도구입니다.
일정을 정밀하게 예측합니다.
!
!
!
!
!
!
!

팀마다의 역량은 서로 다르게 마련입니다.
스프린트 플래닝과 회고를 반복하면서 팀의 능력에 맞는 일정 예측이 가능해집니다.
이처럼 스크럼은 여러가지 장점을 가져다 줍니다.
이제 단점을 이야기 할 때 인가요?
스크럼의 단점은 ‘어렵다’입니다.
스크럼이 추구하는 바를 이해하는 것은 생각처럼 쉽지 않습니다.
!

아침에 쑥스럽게 작업 보고 하는 것,
포스트잇이 많이 소비되는 것,
그냥 귀찮은 것
!

으로만 인식하고 있다면 스크럼은 시간 낭비 일 뿐입니다.
하지만, 너무 걱정하지 마세요.
그런 상황은 어느 팀에서나 일어난답니다.
!

이를 극복하기 위해 희생하는 사람이 바로 ‘스크럼 마스터’입니다.
!

스크럼 회의에서 팀원들이 리스크를 언급하는게
왜 중요한지 설명 해주어야 합니다.
스크럼은 경험을 통해서 얻어진 개발 프로세스입니다.
경험 많은 사람들은
소프트웨어 개발이 왜 실패하는지, 왜 성공하는지 이해합니다.
스크럼은 우리에게 ‘경험’을 선사합니다.
스크럼은 경험이 많지 않은 팀에게
그런 시행 착오를 겪지 않도록 도와줍니다.
!

경험은 열정으로 극복되기도 합니다.
그런 팀에게 프로세스는 거추장스러운 장애물이 되기도 합니다.
한번 만 더 가져와봅니다.
!

- 원활한 커뮤니케이션
- 반복 개발
- 테스트 가능한 결과물
팀원들간의 원활한 소통으로 리스크를 제거하고
테스트가 가능한 결과물을 지속적으로 만들어
우리가 맞는 방향으로 가고 있는지 체크하며,
이 과정을 반복하여 최종 목표를 향해 나아가야 합니다.
!
!
!
!
!
!
!
!

마치 유도탄처럼!
스크럼, 해볼 만 하지 않나요?
긴 발표를 함께 해주셔서 고맙습니다.
!

-끗-
스크럼에 대해 제가 작성한 다른 자료들이 있습니다:
!

'스크럼, 이걸 왜 하나요?' 블로그 글
‘스크럼, 이걸 왜 하나요?’ 프리젠테이션 자료

Mais conteúdo relacionado

Mais procurados

김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
devCAT Studio, NEXON
 
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
devCAT Studio, NEXON
 
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
Kay Kim
 

Mais procurados (20)

[IGC 2017] 넥슨코리아 오현근 - 평생 게임 기획자 하기
[IGC 2017] 넥슨코리아 오현근 - 평생 게임 기획자 하기[IGC 2017] 넥슨코리아 오현근 - 평생 게임 기획자 하기
[IGC 2017] 넥슨코리아 오현근 - 평생 게임 기획자 하기
 
[IGC 2016] 골드로쉬 김현석 - 왜 항상 기획자는 욕을 들어야만 하는 걸까? –게임 기획의 포지션 변화-
[IGC 2016] 골드로쉬 김현석 - 왜 항상 기획자는 욕을 들어야만 하는 걸까? –게임 기획의 포지션 변화-[IGC 2016] 골드로쉬 김현석 - 왜 항상 기획자는 욕을 들어야만 하는 걸까? –게임 기획의 포지션 변화-
[IGC 2016] 골드로쉬 김현석 - 왜 항상 기획자는 욕을 들어야만 하는 걸까? –게임 기획의 포지션 변화-
 
NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)
NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)
NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)
 
CEDEC2016 「コントラスト」で考えるゲームデザイン・レベルデザイン
CEDEC2016 「コントラスト」で考えるゲームデザイン・レベルデザインCEDEC2016 「コントラスト」で考えるゲームデザイン・レベルデザイン
CEDEC2016 「コントラスト」で考えるゲームデザイン・レベルデザイン
 
기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까
 
[NDC 2021] 게임 PD가 되어 보니
[NDC 2021] 게임 PD가 되어 보니[NDC 2021] 게임 PD가 되어 보니
[NDC 2021] 게임 PD가 되어 보니
 
게임기획자 직무 소개
게임기획자 직무 소개게임기획자 직무 소개
게임기획자 직무 소개
 
게임회사 취업을 위한 현실적인 전략 3가지
게임회사 취업을 위한 현실적인 전략 3가지게임회사 취업을 위한 현실적인 전략 3가지
게임회사 취업을 위한 현실적인 전략 3가지
 
쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다쩌는게임기획서 이렇게 쓴다
쩌는게임기획서 이렇게 쓴다
 
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
 
ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用
ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用
ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用
 
ゲーム開発とMVC
ゲーム開発とMVCゲーム開発とMVC
ゲーム開発とMVC
 
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
 
[IGC 2017] 넥슨코리아 심재근 - 시스템 기획자에 대한 기본 지식과 준비과정
[IGC 2017] 넥슨코리아 심재근 - 시스템 기획자에 대한 기본 지식과 준비과정[IGC 2017] 넥슨코리아 심재근 - 시스템 기획자에 대한 기본 지식과 준비과정
[IGC 2017] 넥슨코리아 심재근 - 시스템 기획자에 대한 기본 지식과 준비과정
 
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
 
초필살아이디어3시간안에 뽑아내서 기획서만들기
초필살아이디어3시간안에 뽑아내서 기획서만들기초필살아이디어3시간안에 뽑아내서 기획서만들기
초필살아이디어3시간안에 뽑아내서 기획서만들기
 
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
 
NDC 2015 이은석 - pay-to-skip: 온라인 게임 속 로봇 경제와 내몰리는 인간
NDC 2015 이은석 - pay-to-skip: 온라인 게임 속 로봇 경제와 내몰리는 인간NDC 2015 이은석 - pay-to-skip: 온라인 게임 속 로봇 경제와 내몰리는 인간
NDC 2015 이은석 - pay-to-skip: 온라인 게임 속 로봇 경제와 내몰리는 인간
 
게임 시스템 디자인 시작하기
게임 시스템 디자인 시작하기게임 시스템 디자인 시작하기
게임 시스템 디자인 시작하기
 
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
쩌는 게임 기획서, 이렇게 쓴다(How to write great design documents) from GDC 2008 (Korean)
 

Destaque

[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
MinGeun Park
 
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
민태 김
 
Itsm팀 내부세미나 익스트림프로그래밍_정희찬
Itsm팀 내부세미나 익스트림프로그래밍_정희찬Itsm팀 내부세미나 익스트림프로그래밍_정희찬
Itsm팀 내부세미나 익스트림프로그래밍_정희찬
정 희찬
 
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
MinGeun Park
 
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
MinGeun Park
 
120629 fsm in unity3d skyseer
120629 fsm in unity3d skyseer120629 fsm in unity3d skyseer
120629 fsm in unity3d skyseer
Chan-hyun Park
 
스크럼(Scrum)
스크럼(Scrum)스크럼(Scrum)
스크럼(Scrum)
영기 김
 

Destaque (20)

[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
[데브루키] 유니티와 Play maker를 이용한 쉽고 빠른 게임 개발
 
스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요스크럼, 이걸 왜 하나요
스크럼, 이걸 왜 하나요
 
svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드
 
Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?
 
애자일의 모든것
애자일의 모든것애자일의 모든것
애자일의 모든것
 
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
 
Itsm팀 내부세미나 익스트림프로그래밍_정희찬
Itsm팀 내부세미나 익스트림프로그래밍_정희찬Itsm팀 내부세미나 익스트림프로그래밍_정희찬
Itsm팀 내부세미나 익스트림프로그래밍_정희찬
 
마이크로소프트의 동작인식 센서 키넥트 v2
마이크로소프트의 동작인식 센서 키넥트 v2마이크로소프트의 동작인식 센서 키넥트 v2
마이크로소프트의 동작인식 센서 키넥트 v2
 
유전 알고리즘으로 테트리스 AI 최적화하기
유전 알고리즘으로 테트리스 AI 최적화하기유전 알고리즘으로 테트리스 AI 최적화하기
유전 알고리즘으로 테트리스 AI 최적화하기
 
introduce unity3D and playmaker basic
introduce unity3D and playmaker basicintroduce unity3D and playmaker basic
introduce unity3D and playmaker basic
 
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
[Gpg2권 박민근] 3.3 마이크로 스레드를 통한 ai 관리
 
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
[Gpg2권 박민근] 3.2 게임 객체 ai를 위한 마이크로 스레드
 
[Da Nang Scrum Breakfast] Dealing with Technical Debt
[Da Nang Scrum Breakfast] Dealing with Technical Debt[Da Nang Scrum Breakfast] Dealing with Technical Debt
[Da Nang Scrum Breakfast] Dealing with Technical Debt
 
비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1
 
120629 fsm in unity3d skyseer
120629 fsm in unity3d skyseer120629 fsm in unity3d skyseer
120629 fsm in unity3d skyseer
 
0. review. 린과 애자일 개발
0. review. 린과 애자일 개발0. review. 린과 애자일 개발
0. review. 린과 애자일 개발
 
스크럼(Scrum)
스크럼(Scrum)스크럼(Scrum)
스크럼(Scrum)
 
스터디 초안 발표 - 알고리즘 (한양대 오픈소스동아리)
스터디 초안 발표 - 알고리즘  (한양대 오픈소스동아리)스터디 초안 발표 - 알고리즘  (한양대 오픈소스동아리)
스터디 초안 발표 - 알고리즘 (한양대 오픈소스동아리)
 
사용자 스토리 기반의 스크럼
사용자 스토리 기반의 스크럼사용자 스토리 기반의 스크럼
사용자 스토리 기반의 스크럼
 
Fsm
FsmFsm
Fsm
 

Semelhante a 스크럼을 이용한 게임 개발

131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원
NAVER D2
 
2. 증명된 컨셉으로 게임디자인 하기
2. 증명된 컨셉으로 게임디자인 하기2. 증명된 컨셉으로 게임디자인 하기
2. 증명된 컨셉으로 게임디자인 하기
Suyeong Park
 
SWDeveloperStory201501
SWDeveloperStory201501SWDeveloperStory201501
SWDeveloperStory201501
Suho Kwon
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유
agilekorea
 

Semelhante a 스크럼을 이용한 게임 개발 (20)

Scrum and kanban with jira
Scrum and kanban with jira Scrum and kanban with jira
Scrum and kanban with jira
 
Agile의 의미와 Agile 계획 수립(Gdc2007)
Agile의 의미와 Agile 계획 수립(Gdc2007)Agile의 의미와 Agile 계획 수립(Gdc2007)
Agile의 의미와 Agile 계획 수립(Gdc2007)
 
프로젝트의 가시화
프로젝트의 가시화프로젝트의 가시화
프로젝트의 가시화
 
131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원
 
스크럼과 Xp
스크럼과 Xp스크럼과 Xp
스크럼과 Xp
 
애자일 게임 개발: 현실 세계의 혼돈을 다루는 법 (Agile Game Development: Dealing With Chaos In Th...
애자일 게임 개발: 현실 세계의 혼돈을 다루는 법 (Agile Game Development: Dealing With Chaos In Th...애자일 게임 개발: 현실 세계의 혼돈을 다루는 법 (Agile Game Development: Dealing With Chaos In Th...
애자일 게임 개발: 현실 세계의 혼돈을 다루는 법 (Agile Game Development: Dealing With Chaos In Th...
 
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
 
2019 nexters x spoqa
2019 nexters x spoqa2019 nexters x spoqa
2019 nexters x spoqa
 
애자일 스크럼과 JIRA
애자일 스크럼과 JIRA 애자일 스크럼과 JIRA
애자일 스크럼과 JIRA
 
[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스
[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스
[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스
 
발표원고
발표원고발표원고
발표원고
 
16 학술제 마무리 자료
16 학술제 마무리 자료16 학술제 마무리 자료
16 학술제 마무리 자료
 
2. 증명된 컨셉으로 게임디자인 하기
2. 증명된 컨셉으로 게임디자인 하기2. 증명된 컨셉으로 게임디자인 하기
2. 증명된 컨셉으로 게임디자인 하기
 
[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규
[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규
[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212
 
Pivotal Labs 고객사례 - Coinone
Pivotal Labs 고객사례 - CoinonePivotal Labs 고객사례 - Coinone
Pivotal Labs 고객사례 - Coinone
 
애자일 게임 개발(Agile Game Development) - GDC2007
애자일 게임 개발(Agile Game Development) - GDC2007애자일 게임 개발(Agile Game Development) - GDC2007
애자일 게임 개발(Agile Game Development) - GDC2007
 
SWDeveloperStory201501
SWDeveloperStory201501SWDeveloperStory201501
SWDeveloperStory201501
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유
 
Scrum - Agile Development Process
Scrum - Agile Development ProcessScrum - Agile Development Process
Scrum - Agile Development Process
 

Último

파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
파일 업로드(Kitworks Team Study 유현주 발표자료 240510)파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
Wonjun Hwang
 
Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)
Wonjun Hwang
 

Último (6)

파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
파일 업로드(Kitworks Team Study 유현주 발표자료 240510)파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
파일 업로드(Kitworks Team Study 유현주 발표자료 240510)
 
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
도심 하늘에서 시속 200km로 비행할 수 있는 미래 항공 모빌리티 'S-A2'
 
[OpenLAB] AWS reInvent를 통해 바라본 글로벌 Cloud 기술동향.pdf
[OpenLAB] AWS reInvent를 통해 바라본 글로벌 Cloud 기술동향.pdf[OpenLAB] AWS reInvent를 통해 바라본 글로벌 Cloud 기술동향.pdf
[OpenLAB] AWS reInvent를 통해 바라본 글로벌 Cloud 기술동향.pdf
 
오픈소스 위험 관리 및 공급망 보안 솔루션 'Checkmarx SCA' 소개자료
오픈소스 위험 관리 및 공급망 보안 솔루션 'Checkmarx SCA' 소개자료오픈소스 위험 관리 및 공급망 보안 솔루션 'Checkmarx SCA' 소개자료
오픈소스 위험 관리 및 공급망 보안 솔루션 'Checkmarx SCA' 소개자료
 
Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)Grid Layout (Kitworks Team Study 장현정 발표자료)
Grid Layout (Kitworks Team Study 장현정 발표자료)
 
클라우드 애플리케이션 보안 플랫폼 'Checkmarx One' 소개자료
클라우드 애플리케이션 보안 플랫폼 'Checkmarx One' 소개자료클라우드 애플리케이션 보안 플랫폼 'Checkmarx One' 소개자료
클라우드 애플리케이션 보안 플랫폼 'Checkmarx One' 소개자료
 

스크럼을 이용한 게임 개발

  • 1. 스크럼을 이용한 게임 개발 Agile Game Development with Scrum Reid Lee reid@socialinus.com
  • 2. 게임을 만드는 과정을 떠올려봅시다.
  • 3. 제일 먼저 뭘 해야 할까요? ! 기획을 먼저 할까요? ! 코딩은 기획이 끝나야 시작하나요? ! 테스트는 언제 해야 할까요? ! 기획이 중간에 바뀌면 어떻게 하죠?
  • 4. 지금 여러분은 ‘개발 프로세스’가 필요한 이유를 보셨습니다. 개발 프로세스는 절차를 이야기합니다.
  • 5. 이번에는 조금 다르게 묻겠습니다. 여러분이 만들고 있는 게임은 어떤 ‘개발 프로세스‘를 따르고 있나요?
  • 6. 모든 업무가 그렇듯이 소프트웨어 개발에도 프로세스가 있습니다.
  • 7. 폭포수 모델waterfall model 일의 흐름이 층을 이룬 폭포에서 물이 떨어지는 모습을 닮았어요.
  • 9. 건물 한채를 지어봅시다. ! - 거주자의 요구사항을 수집/분석하고 - 설계도를 그리고 - 미장하고 공구리쳐서 완성을 시킨 후, - 마감이 잘 되었는지 확인합니다. - 이후, 시공 업체는 지속적으로 유지보수하겠죠.
  • 10. 완공 된 아파트의 설계에 결함이 발견되었습니다. 부수고 다시 만들까요? ! 공구리를 치기 전에 설계가 완벽해야 합니다.
  • 11. 폭포수 모델은 공학 분야에도 잘 적용되어 왔습니다. 소프트웨어 개발에도 물론 문제 없습니다.
  • 12. 소프트웨어를 만들어봅시다. ! - 고객 요구를 수집하여 기획서를 완성하고 - 코딩하여 구현 한 후, - QA 테스트를 거쳐 완성. - 이후 개발사는 지속적으로 유지보수합니다.
  • 13. CRM, ERP... 폭포수 모델에 딱 들어맞는 프로젝트들입니다. ! 이들은 코딩을 시작하기 전에 설계가 완벽해야 합니다.
  • 16. 게임은 기능이 아니라 재미를 설계해야 합니다. ! 기능은 누가 보아도 확실한 정답이 있지만, 재미는 보는 사람마다 다른 정답을 가지고 있습니다.
  • 17. 게임은 만들어 보지 않고 설계를 완성시키기 매우 어렵습니다.
  • 18. 지금까지의 개발 방법론으로는 문제가 해결되지 않습니다. ! 그 때, 소프트웨어 개발 전반에 걸쳐 새로운 바람이 불었습니다.
  • 19. 애자일 소프트웨어 개발 선언 ! 우리는 소프트웨어를 개발하고, 또 다른 사람의 개발을 도와주면서 소프트웨어 개발의 더 나은 방법들을 찾아가고 있다. 이 작업을 통해 우리는 다음을 가치 있게 여기게 되었 다: ! 공정과 도구보다 서로의 상호작용을 포괄적인 문서보다 작동하는 소프트웨어를 계약 협상보다 고객과의 협력을 계획을 따르기보다 변화에 대응하기를 ! 가치 있게 여긴다. 이 말은, 왼쪽에 있는 것들도 가치가 있지만, 우리는 오른쪽에 있는 것 들에 더 높은 가치를 둔다는 것이다.
  • 20. 게임에 빗대자면, ! 재미있는 게임을 만들기 위해 변화를 적극적으로 수용하고 더 많은 대화로 서로 협력하며 문서를 작성하기 보다 실제 로 작동하는 게임을 만들어 확인하자.
  • 21. 애자일이 가져다 준 변화 ! ! 생산성이 향상되었다 ..... 87% 원하는 시점에 시장에 내놓게 되었다 ..... 86% 버그가 없어졌다 ..... 86% 비용이 절감되었다 ..... 63% ! ! http://www.versionone.com/pdf/stateofAgiledevelopmentsurvey.pdf
  • 22. 애자일이 가져다 준 변화: ! ! ! ! ! ! ! ! ! 2005년 waterfall software .... 72% scrum agile ..... 28% 2013년 waterfall software ..... 22% scrum agile ..... 78% ! http://yusufarslan.net/agile-and-scrum-really-better-waterfall
  • 23. 요구사항 수집 개발 피드백 출시/유지보수 폭포수 모델이 이전 단계가 완료되어야 다음 단계로 넘어갈 수 있었던 문제 가 있었던 것에 반해서, ! 애자일은 이 일련의 과정을 잘게 나누어 여러번 반복합니다.
  • 24. 그리고 개발 프로세스로 ‘스크럼’을 제시합니다.
  • 25. 스크럼의 핵심: ! - 원활한 커뮤니케이션 - 반복 개발 - 테스트 가능한 결과물
  • 26. 자, 이제부터 스크럼을 게임 개발에 적용해서 차례대로 살펴봅시다.
  • 27. 제일 먼저 해야 할 것은 ‘프로토타이핑’입니다. ! 이 아이디어가 정말 괜찮을까? 머리속에 머물던 궁금증을 실제로 풀어보는 과정입니다. ! 프로토타이핑이 성공하면 드디어 프로젝트가 킥오프됩니다.
  • 28. 게임이 갖출 기능들을 모아봅니다. ! - 브레인스토밍처럼 추상적인 단계가 아니에요. - 기능을 구현하는데 걸리는 시간도 예측합니다. - 기능을 목록Product Backlog으로 정리해보세요. PLANNING
  • 29. 출시일을 계산합니다. ! - 예측한 시간들을 모두 더합니다. - 시간의 압박, 자금의 한계로 출시일을 당겨야 한다면, - 낮은 우선순위의 기능들을 제거합니다. FINAL
  • 30. 릴리즈를 구상합니다. ! - 완전한 형태의 결과물들을 만들어 내는 시점입니다. - 마일스톤으로 불리기도 합니다. - 각 릴리즈의 기능을 목록Release Backlog으로 정리해보세요. REL1 REL2 ALPHA CBT OBT FINAL
  • 31. 릴리즈를 스프린트로 쪼갭니다. ! - 스프린트는 짧게는 2주에서 길게는 1개월 정도로 잡습니다. - 스프린트의 결과물은 완성된 형태로 동작하는게 중요합니다. - ‘기능’을 ‘태스크’로 쪼개어 목록Sprint Backlog으로 정리합니다. REL1 SP1 SP2 SP3 REL2
  • 32. 스프린트 플래닝Sprint Planning ! - 지난 스프린트의 결과를 토대로 기획을 수정합니다. - 스프린트에 완성시킬 기능을 태스크로 쪼갭니다. 스프린트 플래닝 1 2 3 4 5 6 ... SP1 SP2
  • 33. 스프린트 리뷰Sprint Review - 결과물을 테스트하고 피드백을 받습니다. ! 회고Retrospective - 이번 스프린트에서 좋았던 점, 아쉬웠던 점을 이야기합니다. - 다음 스프린트에서의 각오를 이야기합니다. 스프린트 리뷰 / 회고 1 2 3 4 5 6 ... SP1 SP2
  • 34. 스크럼은 매일마다 커뮤니케이션을 합니다. ! - 매일 스크럼 회의를 합니다. - 한 명씩 돌아가며 한일, 할일, 애로사항을 이야기합니다. - 하고 있는 일을 이야기하는게 아니에요. - 일정에 지장을 주는 애로사항은 바로바로 꺼내놓으세요. 1 SP1 MS1 2
  • 35. 번다운 차트burndown chart ! - 스크럼은 현재 작업의 진척 상황을 함께 공유합니다. - 스크럼은 작업의 예측 완료 시각과 실제 완료 시각을 압니다. - 예측에 비해 원활한지 문제가 있는지 쉽게 파악됩니다. 프로젝트 마감 시점에 남은 작업 시간이 0이 되는, 가장 이상적인 기울기입니다. 남은 작업 시간 (hour) 진행 일자
  • 36. 번다운 차트burndown chart ! - 팀의 역량에 비해 너무 과도한 일을 하고 있나요? - 다음 스프린트에서는 일정 예측에 조금 더 신경 써봅시다. 남은 작업 시간 (hour) 진행 일자
  • 37. 번다운 차트burndown chart ! - 팀의 역량을 과소평가 한 건 아닌가요? - 스프린트가 반복 될 수록 일정 예측은 점점 정밀해집니다. 남은 작업 시간 (hour) 진행 일자
  • 38. 여기까지 스크럼이 어떤 방식으로 동작하는지 알아봤습니다. 그런데 잠깐 고민해봅시다. ! ! ! ! ! ! ! ! 스크럼은 우리에게 무얼 강조하고 있는건가요?
  • 39. 스크럼이 추구하는 핵심 가치 세 가지를 다시 돌아봅시다: ! - 원활한 커뮤니케이션 - 반복 개발 - 테스트 가능한 결과물
  • 40. 침묵은 위기, 서로 좀 더 이야기를 많이 하자. 기획 변경을 두려워하지 말자. 항상 개발중 개발중 개발중 하지 말고, 실제로 돌아가는 게임을 만들어보자. 스크럼은 사실 이런 가치를 실현하기 위한 도구 일 뿐입니다.
  • 41. 스크럼은 무엇이고 어떻게 하는 것인가를 알아보았습니다. ! 이번에는 스크럼이 프로젝트를 어떻게 변화시킬 수 있는지 살펴봅시다.
  • 42. 나는 누구인가 여기는 또 어디인가 ! ! ! ! ! ! ! ! ! ! ! 팀원 누구라도 내가 지금 어느 위치에 서있는지 알 수 있습니다. 비전은 언제나 모두에게 동일하게 공유되어야 합니다.
  • 43. 전력 질주를 합니다. ! ! ! ! ! ! ! ! ! ! 스프린트와 같은 단기 목표는 전력 질주를 가능하게 합니다. 장기 목표만으로 진행되는 프로젝트는 갈수록 지치게 마련입니다. 스프린트 리뷰마다 목표 달성을 기념하는 파티를 해보세요!
  • 44. 야근 없이도 잘 굴러갑니다. ! ! ! ! ! ! ! ! ! ! ! ! 출시 전 철야 작업은 반드시 거쳐야 하는 통과 의례가 아닙니다. 지속적으로 출시에 포함 될 기능을 구상하고 일정을 쪼갭니다. 분할 정복Divide and Conquer은 일정을 준수하기 위한 효과적인 방법입니다.
  • 45. 눈총받지 않고 기획을 변경합니다. ! ! ! ! ! ! ! ! ! ! 무턱대고 일정 중에 기획을 변경하면 팀원들은 멘붕에 빠집니다. 기획의 변경은 스프린트의 결과물을 토대로 진행합시다. 팀원들의 공감을 받는 기획 변경은 프로젝트 성공의 청신호입니다.
  • 46. 장애물들을 각개 격파합니다. ! ! ! ! ! ! ! ! ! ! ! ! 스크럼 회의에서 가장 중요한 것은 작업 내용 공유가 아닙니다. 일정에 차질을 주는 애로사항을 팀에 공유하는 것이 가장 중요합니다. 프로젝트가 실패하는 큰 원인은 그 누구도 리스크를 이야기하지 않기 때문입니다.
  • 47. 순항중인지 폭풍우를 만났는지… ! ! ! ! ! ! ! ! ! 팀원들 모두가 프로젝트의 진행 상황을 잘 이해하게 됩니다. 잘 해내고 있는지, 혹시 암초를 만나서 기우뚱거리고 있지는 않은지… 번다운 차트는 프로젝트의 진행 상황을 한 눈에 보여주는 최고의 도구입니다.
  • 48. 일정을 정밀하게 예측합니다. ! ! ! ! ! ! ! 팀마다의 역량은 서로 다르게 마련입니다. 스프린트 플래닝과 회고를 반복하면서 팀의 능력에 맞는 일정 예측이 가능해집니다.
  • 49. 이처럼 스크럼은 여러가지 장점을 가져다 줍니다. 이제 단점을 이야기 할 때 인가요?
  • 51. 스크럼이 추구하는 바를 이해하는 것은 생각처럼 쉽지 않습니다. ! 아침에 쑥스럽게 작업 보고 하는 것, 포스트잇이 많이 소비되는 것, 그냥 귀찮은 것 ! 으로만 인식하고 있다면 스크럼은 시간 낭비 일 뿐입니다.
  • 52. 하지만, 너무 걱정하지 마세요. 그런 상황은 어느 팀에서나 일어난답니다. ! 이를 극복하기 위해 희생하는 사람이 바로 ‘스크럼 마스터’입니다. ! 스크럼 회의에서 팀원들이 리스크를 언급하는게 왜 중요한지 설명 해주어야 합니다.
  • 53. 스크럼은 경험을 통해서 얻어진 개발 프로세스입니다.
  • 54. 경험 많은 사람들은 소프트웨어 개발이 왜 실패하는지, 왜 성공하는지 이해합니다.
  • 56. 스크럼은 경험이 많지 않은 팀에게 그런 시행 착오를 겪지 않도록 도와줍니다. ! 경험은 열정으로 극복되기도 합니다. 그런 팀에게 프로세스는 거추장스러운 장애물이 되기도 합니다.
  • 57. 한번 만 더 가져와봅니다. ! - 원활한 커뮤니케이션 - 반복 개발 - 테스트 가능한 결과물
  • 58. 팀원들간의 원활한 소통으로 리스크를 제거하고 테스트가 가능한 결과물을 지속적으로 만들어 우리가 맞는 방향으로 가고 있는지 체크하며, 이 과정을 반복하여 최종 목표를 향해 나아가야 합니다. ! ! ! ! ! ! ! ! 마치 유도탄처럼!
  • 59. 스크럼, 해볼 만 하지 않나요?
  • 60. 긴 발표를 함께 해주셔서 고맙습니다. ! -끗-
  • 61. 스크럼에 대해 제가 작성한 다른 자료들이 있습니다: ! '스크럼, 이걸 왜 하나요?' 블로그 글 ‘스크럼, 이걸 왜 하나요?’ 프리젠테이션 자료