An Introduction to Agile Game Development with Scrum

  • Slides: 39
Download presentation
An Introduction to Agile Game Development with Scrum, XP and Lean Presented by Clinton

An Introduction to Agile Game Development with Scrum, XP and Lean Presented by Clinton Keith

Clinton Keith - Background Agile c oach and tra iner 24 yea rs of

Clinton Keith - Background Agile c oach and tra iner 24 yea rs of d e experi ence 1 velopment 4 y game develo ears of p exper ience 6 ment y develo pment ears of agile experi the ga ence i me n indust ry. I the ind ntroduced a g ustry i n Marc ile to h 2005

Overview • • • What is agile? Why use it? Overview of Scrum Agile

Overview • • • What is agile? Why use it? Overview of Scrum Agile Planning Lean Game Production Expectations Q&A

? e l i g a s i What

? e l i g a s i What

Agile is an approach for developing products using short iterations and using the results

Agile is an approach for developing products using short iterations and using the results of each iteration to adjust the project plan • Each iteration is like a short project in itself • Uses “inspect and adapt” practices to adjust the goals and measure progress

The Agile Manifesto - applied to game development People and communication over Process and

The Agile Manifesto - applied to game development People and communication over Process and Tools Working game over Design documentation Customer collaboration over Contract negotiation Responding to change over Following a plan www. agilemanifesto. org

Why Adopt Agile? o Reduce wasted effort/crunch o To find the fun first

Why Adopt Agile? o Reduce wasted effort/crunch o To find the fun first

Finding the fun first Alpha/Beta E 3 Demo Production Preproduction Design

Finding the fun first Alpha/Beta E 3 Demo Production Preproduction Design

Process tools partly driven by certainty Far from Agreement Anarchy Complex Requirements Scrum (fun)

Process tools partly driven by certainty Far from Agreement Anarchy Complex Requirements Scrum (fun) Co m pl ic at ed Simple Close to Agreement Close to Certainty Source: Strategic Management and Organizational az by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Technology Far from Certainty

Reducing waste • Discover what works before mass producing it • As much as

Reducing waste • Discover what works before mass producing it • As much as possible, don’t postpone value, debugging and optimization until the end • Let value, risk, cost and knowledge drive the order of what we work on rather than a preordained schedule

Overview m u r c S f o

Overview m u r c S f o

Scrum Daily Scrum 24 hours Sprint 2 -4 weeks Sprint goal Jump Crouch Jump

Scrum Daily Scrum 24 hours Sprint 2 -4 weeks Sprint goal Jump Crouch Jump Sprint backlog Crouch Fly Swim Product backlog Fly Incrementally improved game

The Scrum Project Community Internal director Product Owner Publisher Programmer Artist Tester Programmer The

The Scrum Project Community Internal director Product Owner Publisher Programmer Artist Tester Programmer The Team Designer Artist Programmer Animator Scrum Master Anyone (not an authority role) producer

Always deliver • You must have a potentially demoable / playable game at the

Always deliver • You must have a potentially demoable / playable game at the end of each sprint • Do not miss the end of the sprint • • The deadline is sacred Functionality may vary

Reciprocal commitments The team commits to delivering some amount of functionality The business commits

Reciprocal commitments The team commits to delivering some amount of functionality The business commits to leave priorities alone during the sprint

The Task Board User Stories Tasks (Sprint backlog) Burndown Chart Completed Tasks

The Task Board User Stories Tasks (Sprint backlog) Burndown Chart Completed Tasks

Sprint Backlog Burndown Chart Drag works against velocity Slope = Velocity Hours Backlogged Story

Sprint Backlog Burndown Chart Drag works against velocity Slope = Velocity Hours Backlogged Story Days Must hit zero hours by end

Scaling Scrum “A project doesn’t become a year late overnight. . it loses hours

Scaling Scrum “A project doesn’t become a year late overnight. . it loses hours a day” - Fred Brooks Functional Leadership Team Support services Team

e. Xtreme g n i m m a r Prog

e. Xtreme g n i m m a r Prog

XP 95% Metric XP stands for e. Xtreme Programming is an agile methodology which

XP 95% Metric XP stands for e. Xtreme Programming is an agile methodology which includes Test Driven Development (TDD) and Pair Programming practices

Pair Programming Pair programming is a continuous peer review. It supports: -Mentoring -Knowledge sharing

Pair Programming Pair programming is a continuous peer review. It supports: -Mentoring -Knowledge sharing -Consistent standards -Resource sharing Pair Problem Complexity Programmer Experience Don’t Pair

Agile planning

Agile planning

Agile without planning End? Start End? DONE End?

Agile without planning End? Start End? DONE End?

Traditional vs. agile planning Plans are nothing. Planning is everything. Dwight Eisenhower The “Cone

Traditional vs. agile planning Plans are nothing. Planning is everything. Dwight Eisenhower The “Cone of Uncertainty” Start Plan directed work Iterative Planning End Goal

The product backlog iceberg Sprint Priority Release Future Releases

The product backlog iceberg Sprint Priority Release Future Releases

Release Release Release Light Production Alpha Beta Release A project is a series of

Release Release Release Light Production Alpha Beta Release A project is a series of releases Green Pre

Lean

Lean

We have stages

We have stages

Preproduction vs. Production Preproduction Production Questions/Statements What is fun? How will we build it?

Preproduction vs. Production Preproduction Production Questions/Statements What is fun? How will we build it? Build 10 hours of it! Goals Correctness Efficiency States of mind Collaboration Flow Approach Iterate and increment Increment Derived from Cooper 2008

Process tools partly driven by certainty Far from Agreement Anarchy Complex Scrum Requirements (fun)

Process tools partly driven by certainty Far from Agreement Anarchy Complex Scrum Requirements (fun) Co Lean m pl Pre-production ica te d Simple Close to Agreement Close to Certainty Source: Strategic Management and Organizational az by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Production Technology Far from Certainty Iterative Incremental

Lean Game Production Lean game production is a translation of lean manufacturing principles and

Lean Game Production Lean game production is a translation of lean manufacturing principles and practices to video game asset production. The “Deming Cycle”

Lean Game Production Concept Low rez geometry High rez geometry Ongoing To do (2)

Lean Game Production Concept Low rez geometry High rez geometry Ongoing To do (2) Audio layout Gameplay tuning Buffer Ongoing Done (1) A B D F E C

Seven Lean Principles • Eliminate waste • Amplify learning • Decide as late as

Seven Lean Principles • Eliminate waste • Amplify learning • Decide as late as possible • Deliver as fast as possible • Empower the team • Build integrity in (balance discipline) Lean on • See thechapter whole website

Now for the bad news. . . The myths. . .

Now for the bad news. . . The myths. . .

s m e l b o r p ou) t n y e r

s m e l b o r p ou) t n y e r v o e f r p m l l e i w e th m olv u r Sc (or s

Scrum can achieve impossible goals

Scrum can achieve impossible goals

Scrum does not require competent leadership

Scrum does not require competent leadership

Starting agile

Starting agile

Clint@Clinton. Keith. com www. Clinton. Keith. com • • Onsite classes and coaching •

Clint@Clinton. Keith. com www. Clinton. Keith. com • • Onsite classes and coaching • Team training, Advanced Scrum, Lean Production Certified Scrum. Master for Game Development course • Before IGDA Leadership Forum, November 10 th & 11 th Agile Game Development book in early 2010 These slides are posted on my website Questions?