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

An Introduction to Agile Game Development with Scrum, XP and Lean

  • Upload
    xannon

  • View
    26

  • Download
    0

Embed Size (px)

DESCRIPTION

An Introduction to Agile Game Development with Scrum, XP and Lean. Presented by Clinton Keith. Overview. What is agile? Why use it? Overview of Scrum Agile Planning Lean Game Production Expectations Q&A. What is agile?. - PowerPoint PPT Presentation

Citation preview

Page 1: An Introduction to Agile Game Development with Scrum, XP and Lean

An Introduction to Agile Game

Development with Scrum, XP and Lean

Presented by Clinton Keith

Page 2: An Introduction to Agile Game Development with Scrum, XP and Lean

24 years of development experience14 years of game development experience6 years of agile

development experience in the game industryIntroduced agile to

the industry in March 2005

Agile coachand trainer

Clinton Keith - Background

Page 3: An Introduction to Agile Game Development with Scrum, XP and Lean

Overview

• What is agile? Why use it?

• Overview of Scrum• Agile Planning• Lean Game Production• Expectations• Q&A

Page 4: An Introduction to Agile Game Development with Scrum, XP and Lean

What is agile?What is agile?What is agile?What is agile?

Page 5: An Introduction to Agile Game Development with Scrum, XP and Lean

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

Page 6: An Introduction to Agile Game Development with Scrum, XP and Lean

People and communicatio

n

Process and Tools

The Agile Manifesto - applied to game development

Working game

Customer collaboration

Responding to change

Design documentation

Contract negotiation

Following a plan

over

over

over

over

www.AgileManifesto.org

Page 7: An Introduction to Agile Game Development with Scrum, XP and Lean

Why Adopt Agile?

oReduce wasted effort/crunch

oTo find the fun first

Page 8: An Introduction to Agile Game Development with Scrum, XP and Lean

Design

E3 Demo

Preproduction

Production

Alpha/Beta

Finding the fun first

Page 9: An Introduction to Agile Game Development with Scrum, XP and Lean

Simple

Complicated

Anarchy

Complex

Close toCertainty

Far fromCertaintyTechnology

Close toAgreement

Far fromAgreement

Requirements

(fun)

Source: Strategic Management and Organizational az by Ralph Stacey in Agile Software Development with Scrum by Ken

Schwaber and Mike Beedle.

Process tools partly driven by certainty

ScrumScrumScrumScrum

Page 10: An Introduction to Agile Game Development with Scrum, XP and Lean

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

Page 11: An Introduction to Agile Game Development with Scrum, XP and Lean

Overview Overview of Scrumof Scrum

Overview Overview of Scrumof Scrum

Page 12: An Introduction to Agile Game Development with Scrum, XP and Lean

Scrum

Swim

Crouch

Jump

Sprint2-4 weeks

Jump

Sprint goal

Sprint backlog

Incrementallyimproved game

Productbacklog

FlySwim

Fly

Crouch

Daily Scrum

24 hours

Page 13: An Introduction to Agile Game Development with Scrum, XP and Lean

The Scrum Project Community

Programmer Programmer

Artist

Programmer

Designer

Tester

Animator

ArtistThe

TeamThe

Team

Internaldirector

Publisherproducer

Product Owner

Product Owner

ScrumMasterScrumMaster

Anyone(not an

authority role)

Page 14: An Introduction to Agile Game Development with Scrum, XP and Lean

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

Page 15: An Introduction to Agile Game Development with Scrum, XP and Lean

Reciprocal commitments

The team commits to delivering some amount of

functionality

The business commits to leave priorities alone during

the sprint

Page 16: An Introduction to Agile Game Development with Scrum, XP and Lean

User Stories Tasks (Sprint backlog) Completed Tasks

Burndown Chart

The Task Board

Page 17: An Introduction to Agile Game Development with Scrum, XP and Lean

Backlogged Story

Slope = Velocity

Drag works against velocity

Must hit zero hours by end

Days

Hours

Sprint Backlog Burndown Chart

Page 18: An Introduction to Agile Game Development with Scrum, XP and Lean

Scaling Scrum

Team

Support services

Functional Leadershi

p

TeamTeam

“A project doesn’t become a year late overnight....it loses hours a day” - Fred

Brooks

Page 19: An Introduction to Agile Game Development with Scrum, XP and Lean

eXtremeeXtreme

ProgrammingProgrammingeXtremeeXtreme

ProgrammingProgramming

Page 20: An Introduction to Agile Game Development with Scrum, XP and Lean

XPXP stands for eXtreme Programming is an agile

methodology which includes Test Driven Development (TDD) and Pair Programming

practices

95%Metric

Page 21: An Introduction to Agile Game Development with Scrum, XP and Lean

Pair Programming

Programmer Experience

ProblemComplexity

Pair

Don’tPair

Pair programming is a continuous peer review. It supports:-Mentoring-Knowledge sharing-Consistent standards-Resource sharing

Page 22: An Introduction to Agile Game Development with Scrum, XP and Lean

AgileAgileplanningplanning

AgileAgileplanningplanning

Page 23: An Introduction to Agile Game Development with Scrum, XP and Lean

DONEDONEDONEDONE End?

End?

End?

End?

Start

Agile without planning

Page 24: An Introduction to Agile Game Development with Scrum, XP and Lean

The “Cone of Uncertainty”

Traditional vs. agile planning

Start Goal

End

Plan directed work

IterativePlanning

Plans are nothing. Planning is everything.

Dwight Eisenhower

Page 25: An Introduction to Agile Game Development with Scrum, XP and Lean

The product backlog iceberg

Sprint

Release

FutureReleases

Priority

Page 26: An Introduction to Agile Game Development with Scrum, XP and Lean

A project is a series of releases

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Green

Light

PreProduction Production

AlphaBeta

Page 27: An Introduction to Agile Game Development with Scrum, XP and Lean

LeanLeanLeanLean

Page 28: An Introduction to Agile Game Development with Scrum, XP and Lean

We have stages

Page 29: An Introduction to Agile Game Development with Scrum, XP and Lean

Questions/StatementsQuestions/StatementsQuestions/StatementsQuestions/Statements

PreproductionPreproductionPreproductionPreproduction ProductionProductionProductionProduction

GoalsGoalsGoalsGoals

States of mindStates of mindStates of mindStates of mind

ApproachApproachApproachApproach

What is fun? How What is fun? How will we build it?will we build it?

What is fun? How What is fun? How will we build it?will we build it?

CollaborationCollaborationCollaborationCollaboration

Iterate and Iterate and incrementincrement

Iterate and Iterate and incrementincrement

Build 10 hours of it!Build 10 hours of it!Build 10 hours of it!Build 10 hours of it!

EfficiencyEfficiencyEfficiencyEfficiency

FlowFlowFlowFlow

IncrementIncrementIncrementIncrement

CorrectnessCorrectnessCorrectnessCorrectness

Derived from Cooper2008

Preproduction vs. Production

Page 30: An Introduction to Agile Game Development with Scrum, XP and Lean

Simple

Complicated

Anarchy

Complex

Close toCertainty

Far fromCertainty

Close toAgreement

Far fromAgreement

Source: Strategic Management and Organizational az by Ralph Stacey in Agile Software Development with Scrum by Ken

Schwaber and Mike Beedle.

Process tools partly driven by certainty

Pre-production

Production

Iterative

Incremental

ScrumScrumScrumScrum

LeanLeanLeanLean

Requirements

(fun)

Technology

Page 31: An Introduction to Agile Game Development with Scrum, XP and Lean

Lean Game Production

Lean game production is a translation of lean manufacturing principles and practices to video game asset production.

The “Deming Cycle”

Page 32: An Introduction to Agile Game Development with Scrum, XP and Lean

Lean Game Production

To doOngoing

(1) Done

D

A

B

C

Ongoing(2)

E

Buffer(1)

F

ConceptConcept Low rez geometry

Low rez geometry

High rezgeometry

High rezgeometry

Gameplay tuning

Gameplay tuning

Audio layout

Audio layout

Page 33: An Introduction to Agile Game Development with Scrum, XP and Lean

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)

•See the wholeLean chapter on website

Page 34: An Introduction to Agile Game Development with Scrum, XP and Lean

Now for the bad news...

The myths.....

Page 35: An Introduction to Agile Game Development with Scrum, XP and Lean

Scrum will prevent problems

Scrum will prevent problems

(or solve them for you)

(or solve them for you)

Scrum will prevent problems

Scrum will prevent problems

(or solve them for you)

(or solve them for you)

Page 36: An Introduction to Agile Game Development with Scrum, XP and Lean

Scrum can achieve impossible goalsScrum can achieve impossible goalsScrum can achieve impossible goalsScrum can achieve impossible goals

Page 37: An Introduction to Agile Game Development with Scrum, XP and Lean

Scrum does not require Scrum does not require competent leadershipcompetent leadershipScrum does not require Scrum does not require competent leadershipcompetent leadership

Page 38: An Introduction to Agile Game Development with Scrum, XP and Lean

Starting agile

Page 39: An Introduction to Agile Game Development with Scrum, XP and Lean

Questions?Questions?

• Onsite classes and coaching• Team training, Advanced Scrum, Lean Production

• Certified ScrumMaster for Game Development course• Before IGDA Leadership Forum, November 10th &

11th• Agile Game Development book in early 2010• These slides are posted on my website

[email protected]

www.ClintonKeith.com

[email protected]

www.ClintonKeith.com