Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a...

17
Clinton Keith Presented by Scrum Essentials for Game Teams We’ll be moving seats before we start this morning, so don’t unpack yet! Scott Crabtree © 2008–2012 Clinton Keith Clinton Keith © 2008–2012 Clinton Keith Today Scrum is a simple framework This workshop is a broad overview of using Scrum for game development Broadband, interactive communication for learning, as compared to narrow-band, scalable techniques such as books Through exercises, discussion, and lecture you will learn how to solve problems in a Scrum-like manner I’ll give you a link to these slides at the end 1 2 3 Thursday, March 1, 12

Transcript of Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a...

Page 1: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

Clinton Keith

Presented by

Scrum Essentials for Game Teams

We’ll be moving seats

before we start this

morning, so don’t unpack

yet! Scott Crabtree

© 2008–2012 Clinton Keith

Clinton Keith

© 2008–2012 Clinton Keith

Today• Scrum is a simple framework

• This workshop is a broad overview of using Scrum for game development

• Broadband, interactive communication for learning, as compared to narrow-band, scalable techniques such as books

• Through exercises, discussion, and lecture you will learn how to solve problems in a Scrum-like manner

• I’ll give you a link to these slides at the end

1

2

3Thursday, March 1, 12

Page 2: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Today

• Lunch 12-2

• Break 4-4:30

• Too many people to stop to answer questions

© 2008–2012 Clinton Keith

0"

5"

10"

15"

20"

25"

30"

35"

40"

45"

0" 1" 2" 3" 4" 5" 6" 7" 8"

Points'

Time'

Your burndown

© 2008–2012 Clinton Keith

Agile & Scrum Overview

4

5

6Thursday, March 1, 12

Page 3: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

0

25

50

75

100

1 2 3 4 5 6 7 8 9 10 11 12 13

% "

Fun"

Kno

wn

Time

WaterfallAtari/Nintendo

Design

E3 Demo

Preproduction

Production

Alpha/BetaNot fun yet?

Finding the fun first

The “Cone of Uncertainty”

Traditional vs. agile planning

Start Goal

End

Plan directed work

IterativePlanning

Plans are nothing. Planning is everything.

Dwight Eisenhower

Individuals and interactions

Process and Tools

Working game

Customer collaboration

Responding to change

Design documentation

Contract negotiation

Following a plan

over

over

over

over

The Agile Manifesto (for game development)We are uncovering better ways of developing games by doing it and helping others do it. Through this work we have come to value:

7

8

9Thursday, March 1, 12

Page 4: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Scrum

© 2008–2012 Clinton Keith

Sprint2-4 weekTime-box

ProductOwner

Developers

ScrumMasterScrum Daily Scrum

Sprint planning Sprint

review

Sprintbacklog Improved

Game

Sprintgoal

SwimFly

Crouch

Jump

Productbacklog

© 2008–2012 Clinton Keith

Scrum

Developers

ScrumMaster

RetrospectiveRetrospective actions /

Experiments

ProductOwner

Sprint reviewProduct backlog

Improvedgame

10

11

12Thursday, March 1, 12

Page 5: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

ReleasesSp

rint

1

Spri

nt 2

Spri

nt 3

Spri

nt 4

Spri

nt 5

Spri

nt 6

Release

Spri

nt 7

Spri

nt 8

Spri

nt 9

Spri

nt 1

0

Spri

nt 1

1

Spri

nt 1

2

Release

© 2008–2012 Clinton Keith

Large-Scale Games

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Rel

ease

Green Light

PreProduction Production Alpha

Beta

© 2008–2012 Clinton Keith

SprintRelease

Priority

High

Low

Future Releases

Value

Cost

Risk

Knowledge

The Product Backlog IcebergProductOwner

13

14

15Thursday, March 1, 12

Page 6: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Scrum Roles

© 2008–2012 Clinton Keith

•Form teams of 10 people•The goal is pass a tennis ball around the group as fast as possible

•Each person must own the ball•Ownership means it’s touching your hand and nothing else

•The first person to own the ball must be the last person owning it

•One person measures and writes down the time, but doesn’t have to pass the ball

Pass the ball #1 30 sec#2 28 sec#3 25 sec...

© 2008–2012 Clinton Keith

Scrum roles

Scrum Team

ProductOwner

Developers

ScrumMaster

16

17

18Thursday, March 1, 12

Page 7: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Product Owner Duties

•Maintains the product backlog•Conveys a shared vision•Represents the customers and shareholders

•Participates in all Scrum ceremonies•Accepts or rejects sprint results•Guides releases, not sprints

© 2008–2012 Clinton Keith

The ScrumMaster Duties

•Remove impediments•Ensures all Scrum artifacts exist•Facilitates Scrum ceremonies•Support and guide the PO role•Coaches the team on process

© 2008–2012 Clinton Keith

Doing the right thing, the right way

Rightthing

Right wayWrong way

Wrongthing

Unsustainable wins

Enduring success

Fast Failure

Slow Failure

19

20

21Thursday, March 1, 12

Page 8: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

The Team Duties

•Plans the sprint backlog•Does everything necessary to achieve sprint goal

•Removes most impediments•Manages the sprint backlog

© 2008–2012 Clinton Keith

Sprints,part 1

© 2008–2012 Clinton Keith

Build for 15 minutes

Demonstrate to another group for 2

minutes

22

23

24Thursday, March 1, 12

Page 9: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Sprints• Scrum projects make progress

in a series of sprints

• During the sprint, the team does

• Animation

• Coding

• Testing

• Level design

• and so on

• After each sprint, game can be played / demoed

This is thesprint

© 2008–2012 Clinton Keith

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

© 2008–2012 Clinton Keith

Reciprocal commitmentsThe team commits to delivering some amount of functionality

The business commits to leave priorities alone during the sprint

25

26

27Thursday, March 1, 12

Page 10: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Sprint length• Most common lengths:

• 2-weeks, 4-weeks, 1 month

• You can change your sprint length, but not every sprint

• How long the business can go without changing its mind• Amount of uncertainty on the project• Ability to reliably predict effort on tasks four weeks out• The overhead of iterating• Pick a length that spreads intensity appropriately

Factors to consider...

© 2008–2012 Clinton Keith

Done over timeConcept

Prototype

Playable

Polish

Sprint

Performance

Magazine demoRelease

Pass full QA Ship

© 2008–2012 Clinton Keith

Sprints,part 2

28

29

30Thursday, March 1, 12

Page 11: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Scrum meetings

Spri

nt R

etro

spec

tive

Daily Scrums Spri

nt R

evie

w M

eetin

g

Spri

nt P

lann

ing

Mee

ting

Spri

nt P

lann

ing

Mee

ting

• Body Text with a bullet and set to proper indents

© 2008–2012 Clinton Keith

Sprint planning meeting• Team selects items from the product backlog they

can commit to completing

• Sprint backlog is created• Tasks are identified and each is estimated (1-16 hours)

• Collaboratively, not done alone by the ScrumMaster

• Very high-level design is considered

As a player I want punches, reactions and blocks synchronized, so that fighting looks natural and realistic

Create close punch animations (12 hours)Tune attack percentage in AI (4)Remap controls so attacks are on free buttons (4)Tune block and reaction animations to be same length (2)

© 2008–2012 Clinton Keith

Sprint backlog

Create close punch animations (12 hours)Tune attack percentage in AI (4)Remap controls so attacks are on free buttons (4)Tune block and reaction animations to be same length (2)

31

32

33Thursday, March 1, 12

Page 12: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Task boards

As a user, I... 8 points

Story To DoIn

ProcessTo

Verify DoneCode the... 9

Code the... 2

Test the... 8

As a user, I...5 points

Code the... 8

Code the... 4Code the...

6

Code the... 4

Test the... 8

Code the... 8

Code the...MC 4

Test the...SC 8

Code the...DC 8

Test the...SC 8

Test the...MC 8

Code the...LC 8

Test the...SC 4

Test the... 8

Code the... 8

Test the... 4

Test the... 8

© 2008–2012 Clinton Keith

Burndown Charts• Primary method of tracking progress

• A burndown chart shows how much work is left as of various dates

0

200

400

600

800

1,000

4/29

/02

5/6/

02

5/13

/02

5/20

/02

5/24

/02

© 2008–2012 Clinton Keith

The Daily Scrum• Parameters

• Daily

• 15-minutes

• Stand-up

• Helps avoid other unnecessary meetings

What did you do yesterday?1

What will you do today?2

Is anything in your way?3

34

35

36Thursday, March 1, 12

Page 13: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

The Sprint Review

• Team presents what it accomplished during the sprint

• Typically takes the form of a demo of new features or underlying architecture

• Informal• 2-hour prep time rule

• No slides

• Whole team participates

• Invite the world

© 2008–2012 Clinton Keith

Sprint Retrospective

• Periodically take a look at what is and is not working

• Typically 15–30 minutes

• Done after every sprint

• Whole team participates

• ScrumMaster

• Product owner

• Team

• Possibly customers and others

Start doing

Stop doing

Continue doing

© 2008–2012 Clinton Keith

Family Board Game

37

38

39Thursday, March 1, 12

Page 14: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Vision

For families with children 6-18, KnowItAll is a board game that only takes 5 minutes to play. KnowItAll allows families to play in a collaborative way and discover things about each other, unlike other board games, which create competition and non-collaborative behavior.

© 2008–2012 Clinton Keith

• Choose a ScrumMaster & Product Owner

• Discuss project vision, initial backlog & resources

• Prioritize the backlog

• Plan a sprint

• Sprint!

• Review and revise backlog

• Retrospective

Steps

Until we run out of time

© 2008–2012 Clinton Keith

Rules5 minute sprints

(using the supplies)

Planning occurs before sprints (take as long as you want)

Must meet the definition of done for sprints and release

40

41

42Thursday, March 1, 12

Page 15: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Definition of Done

Prototype Sprint

Stand-alone demo Release

© 2008–2012 Clinton Keith

• Scissors

• Glue sticks

• Colored card stock (some with hexagons)

• Markers

• Colored index cards

• Dice

• Poker chips

• Miscellaneous craft supplies

Resources

© 2008–2012 Clinton Keith

Conclusion

43

44

45Thursday, March 1, 12

Page 16: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Apprentice• 3-12 months• Daily Scrums• Iterations• Roles• “Done”

Journeyman• 12-24 months• Faster integrations• Better testing• Release planning

Master• Never ends• Self organization• 100% customization

The Roadmap

Continual improvement

© 2008–2012 Clinton Keith

Further reading

© 2008–2012 Clinton Keith

Training/Certification Paths

46

47

48Thursday, March 1, 12

Page 17: Scrum Essentials for Game Teams - Clinton Keith•Scrum is a simple framework •This workshop is a broad overview of using Scrum for game development •Broadband, interactive communication

© 2008–2012 Clinton Keith

Clinton [email protected]

www.ClintonKeith.com

@ClintonKeith

Slides:

www.ClintonKeith.com/GDC12SE.pdf

Scott CrabtreeScott@ www.HappyBrainScience.com

www.HappyBrainScience.com

@ScottCrab

Contact Scott for slides

49

Thursday, March 1, 12