15

Click here to load reader

Game Development Process Management

Embed Size (px)

Citation preview

Page 1: Game Development Process Management

KASA 발표 내용

Game Development Process Management

BPM 으로 돌아보는 게임 개발 프로세스

2008 년 11 월 16 일이창희 ([email protected])

Page 2: Game Development Process Management

KASA 발표 내용

소개

경영환경의 변화와 BPM 에 대해 알아보자 . 그렇다면 게임 개발 환경은 ?

Page 3: Game Development Process Management

KASA 발표 내용

경영 환경의 변화

무한 경쟁 시대의 돌입 급격한 변화와 미래예측 환경 변수가 많다 . 무한대의 지식의 증가

기존 생존을 위해서는… 신제품을 끊임없이 개발해야 한다 . 그러나 , 경쟁이 치열하여 ,

개발에 들어가는 비용은 점점 증가한다 . 이해 당사자의 증가

고객 위주의 서비스가 필요 ( 안 그러면 망한다 .)

엄청 빨리 돌아가는 세상 , 고객의 요구는 점점 높아지고 , 급격하게 변한다 . 기업의 입장에서 고객의 요구에 맞춰서 빠른 변화를 하면서 제품을 생산하고 , 지속적으로 변화를 해주어야 한다 . 그러면서 비용을 최소화 해야 하는데…

Page 4: Game Development Process Management

KASA 발표 내용

Process? Process? Process?

Process 란 ? 특정고객 /시장을 위한 필요 산출물의 생성을 위해 구조화된 측정 가능한 활동의 집합

고객 위주 , 고객관점 (or 시장 ) 의 Needs 에 따라 , 프로세스의 중요도 결정 게임 개발의 경우 , 유저가 원하는 프로세스가 가장 주프로세스 .

프로세스 경영 ? 데이터 중심 -> 프로세스 중심 고객 지향적 Business Process IT 를 활용한 프로세스 관리

Ex) 회사의 중요 인재가 사라질 경우 기업의 막대한 피해 , 하지만 , 프로세스 중심은 사람이 없어져도 프로세스는 남아있으므로 , 문제가 되지 않는다 .

Enterprise?! 작업의 관점을 단위 부서 , 작업자의 관점이 아니라 , 회사 전체 , 팀 전체의 입장에서 처리를

하는 프로세스를 설계해야 한다 .

고객 이해당사자도 고객

게임 엔진 파트 -> 모든 개발팀이 고객 기획 파트 -> 모든 개발 파트가 고객

모든 이해당사자 사이의 요구조건 또한 빠르게 적용이 되어야 하는데…

Page 5: Game Development Process Management

KASA 발표 내용

BPR

BPR 기존에 업무 처리에 대한 불투명함을 개선하고 , 프로세스를 고객의 관점에서 변경하고 , 새로

구분하여 , 업무 프로세스를 효율적으로 변화시킨다 .

Enterprise Architecture 예 ) A 개발팀은 게임엔진이 필요해서 – 개발 , B 개발팀도 급하게 프로토타입을 만들기

위해 , 랜더러만 급히 개발 ... 위와 같은 사건들이 발생하면서 , 전사적으로 Process 를 통합하고 , 데이터를 관리할

수 있도록 구조화가 필요 .

Process Architecture 구체적인 일상 프로세스들이 이후의 환경변화 속에서도 민첩한 대응과 지속적인 성과창출이

가능하도록 프로세스를 관리하는 체계와 룰 , 관리정책 등 (Framework) 을 총칭 . 타 부서와의 협업 또는 이후의 프로세스 경영 확산을 감안했을 때 , 전체적인 시각을 확보하고 이후

구축 단계에서 발생 가능한 문제점을 사전에 식별하여 대응하기 위해서 필요 . 전사적으로 비즈니스를 검토하고 협의할 수 있는 도구 .

뭔 소리인고 ? 사람이 많다고 전체적으로 걸리는 극적으로 빨라지나 ?

그 이유는 ? Bottleneck Bottleneck

Page 6: Game Development Process Management

KASA 발표 내용

BPM

Business Process Management 비즈니스 경영 + IT 모든 Process 를 처리하기 위한 All-in-one IT 솔루션 .

최근 들어 , 많은 제품들이 만들어지기 시작함 . 참고 ) 오픈소스 BPM-uEngine: http://uengine.org/web/guest/home

BPM 은 BP(Business Process) 에 대해 설계 , 분석 , 최적화 , 자동화를 할 수 있다 . 그러기 위해 BPM 은 시스템 실행의 기반이 되는 응용프로그램으로부터 프로세스 로직을 분리하고 , 프로세스 구성요소간 상호관계를 관리하며 , 내 /외부 프로세스 자원들을 통합하고 , 프로세스 성능을 지속적으로 감시한다 .

회사 내에서 이루어지는 모든 업무가 BPM 안에서 이루어 진다 . 사용자는 BPM 을 통해서 , 어떤 시스템관 연과되어 있는지 상관없이 사용이 가능하다 .

KMS( 지식 관리 시스템 ), ERP( 전사적 자원 과리 시스템 ) 등 ... 모든 자료가 공유되므로 , 신규 업무에 대한 자료를 바로 찾아볼 수 있다 . 프로세스 상의 설정에 따라 , 나와 연결된 프로세스가 처리 되었는지를 확인할 수 있다 .

“ 하나의 BPM 을 통해서 전사적인 작업이 처리가 되기 때문에 , 한 눈에 처리 현황을 볼 수 있다” .

정보흐름의 실시간 조정 및 통제 업무지연 및 정체 시 실시간 현황 정보 조회 가능 지연 및 정체 업무 감지 및 조치 통보 업무지연에 대한 조속한 조치로 업무 처리누락 발생 제거

업무처리 조건에 부합하지 않으면 , 자동으로 지연 및 정체 업무로 감지

사례 이 C 는 아침에 회사에 출근하여 , 업무의 시작을 BPM 에 접속하면서 시작한다 . BPM 메인 페이지에는 자신이 해야 할 업무와 타

부서에서 넘겨 받아야 업무의 처리 현황 , 업무에 관련된 자료 등이 보여짐으로 , 업무를 처리한다 .

Page 7: Game Development Process Management

KASA 발표 내용

BPM

Page 8: Game Development Process Management

KASA 발표 내용

게임 개발의 환경

엄청 빠르게 변화 게임 개발 비용은 이미 엄청난데 , 지속적으로 증가 경쟁은 엄청나게 치열 유저들의 눈높이는 점점 높아져만 가고 , 원하는 건 뭐가 그리 많은지…

온라인 게임의 경우 , 지속적인 업데이트를 해주어야 한다 .

“ 과연 이런 변화하는 상황에 맞게 개발 환경이 변하고 있는가 ?”

Page 9: Game Development Process Management

KASA 발표 내용

게임 개발 현실

Bottleneck 아티스트는 Art 만만 , 프로그래머는 Coding 만만 , 게임 디자이너는

Design 만만 한다 .(?!) 우리가 만드는 것이 어떤 게임인가요 ?

Process 의 중요성은 인식을 하고 있다 . 하지만 , Process 의 중요성만 인식하고 있다 ?!

우리가 작업해야 할 것이 어떻게 흘러가는지 눈에 보이지 않는다 . 내가 작업한 결과를 확인하는 데까지 , 시간이 오래 걸린다 .

결국 문제는 작업의 처리 흐름이 한 눈에 파악을 할 수가 없다는 것

Page 10: Game Development Process Management

KASA 발표 내용

게임 개발 현실

온라인 게임의 경우 , 현실적으로 업데이트 하는 비용과 시간이 너무 많이 든다 . 우리 주변에서 초반에 오픈했을 때 , 반짝 잘 되었다가 , 향후

업데이트가 잘 안되어서 망하는 경우를 많이 볼 수가 있음 . 왜 일까 ?

게임을 개발하는 것에 자체에 초점을 둔 경우가 대부분 . 극단적으로 , 시간이 지남에 따라 업데이트를 해야 할 Content 의 추가에 부하가 걸려 업데이트가 힘든 경우가 발생 .

결국 , 사용자의 요구의 속도를 업데이트 속도가 따라가지 못한다 . 부서 단위로는 작업이 원활하지만 , 부서와 부서 사이의 작업이 역시 원활하지는 않는 듯 .

결국 , 전사적 (Enterprise) 혹은 전체적인 입장에서 업무를 처리하는 Framework 이 없다는 이야기…

Page 11: Game Development Process Management

KASA 발표 내용

BPM versus …

그렇다면 우리에게 필요한 것은 ? 게임 개발 작업을 All-in-one 으로 처리할 수 있는 BPM 과 같은 게임

개발 작업용 Framework 이 필요하다 . “ 모델러가 Level 에 들어갈 모델을 완성하고 , 체크인을 하였다 . 다른 쪽에서 Level 을 작업하던 아티스트가 체크인이 되었다는 신호를 Editor 에서 받고 , 새로 Asset 들을 받아서 , Level 을 작업한다 . 프로그래머가 작업한 컨텐츠도 업로드 되어서 , Level 에디터에서 작업된 결과를 그 자리에서 연결해서 확인을 해볼 수 있고 , 게임 디자이너도 작업한 데이터를 바로 바로 확인해 볼 수 있다 .” 시스템 내부적으로는 마치 ERP 처럼 모든 게임 리소스를 관리하고 , KMS

처럼 게임 내의 모든 게임 데이터를 관리하고 , 필요할 때 , 실시간으로 업데이트가 가능하고 , 확인가능 .

모든 작업이 네트워크와 DB 를 통해서 연결되어 있다 .

Hero Engine 의 feature 를 봐 볼까 ? http://www.heroengine.com/why.asp

Bigworld 도 한번 보자 http://www.bigworldtech.com/index/

Page 12: Game Development Process Management

KASA 발표 내용

To do list

컴파일 타임이 아닌 실행 타임에 데이터를 통해서 , 변경이 가능해야 한다 . Game Framework: Data-driven, Component…

Level 디자인 , 게임 데이터 변경 , 적용 등을 위한 ToolSet 이 필요 Tool Framework: Data-driven, 동적으로 툴의 변경이 가능 ,

자원 관리 시스템과도 연동 http://www.gamasutra.com/view/feature/3798/

making_your_game_tools_fast_and_.php Insomniac games 에서 개발한 ToolFramework

http://nocturnal.insomniacgames.com/index.php/ToolsFramework

게임 디자인 및 테스트 Script

Page 13: Game Development Process Management

KASA 발표 내용

Conclusion

BPM 에 대한 수업을 듣고 난 후에 주관적인 비교였음 .

작업자가 팀 전체 혹은 프로세스 전체를 볼 수 있는 것이 가장 중요 .

게임 개발 프로젝트에서도 , 제품 출시 이후에 대한 지속적은 서비스를 위한 서비스 중심의 기반 개발 Framework 을 갖춰야 한다 .(live 팀이 너무 고생을 많이 해요 . ㅜㅜ )

즉 , 팀 전체의 관점에서 작업이 어떻게 진행되는지를 투명하게 바라볼 수 있어야 하고 , 고객 및 이해당사자들의 요구 사항에 빠르게 대응할 수 있어야 한다 .

Page 14: Game Development Process Management

KASA 발표 내용

참고자료

BPM 의 정의와 사례 http://kin.naver.com/detail/detail.php?d1id=4&dir_id

=40903&eid=L2jGfCnpAAA5VbjUsnhXJaWNLXTZBzpn&qb=QlBN&pid=fe1yAdoi5UlsscnxVL8sss--133827&sid=SR1yhCY@HUkAADC16gs

GPGStudy.com – Hero Engine 에 대한… http://www.gpgstudy.com/forum/viewtopic.php?t=2

1369 ToolsFramework

http://nocturnal.insomniacgames.com/index.php/ToolsFramework

Page 15: Game Development Process Management

KASA 발표 내용

Q & A

http://cagetu.egloos.com/4731063 에 질문해 주시면 , 답변 하겠음 .