• No results found

Mike Cohn - background

N/A
N/A
Protected

Academic year: 2021

Share "Mike Cohn - background"

Copied!
18
0
0

Loading.... (view fulltext now)

Full text

(1)

Scrum for Video Game

Development

Mike Cohn - background

© Mountain Goat Software, LLC

(2)

© Mountain Goat Software, LLC

What is Scrum?

One of the agile processes

Iterative and incremental

Produces demonstrable working software every two

to four weeks

Results- and commitment-oriented

Not a silver bullet

Has a long history of success on a wide variety of

projects, including video game development

© Mountain Goat Software, LLC

Why Scrum for game development?

(3)

© Mountain Goat Software, LLC

Project noise level

Simple

Complex

Anarchy

Complicated

Technology

Requir

ements

Far from

Agreement

Close to

Agreement

Close to

Cer

tainty

Far fr

om

Cer

tainty

Source: Strategic Management and

Organizational Dynamics by Ralph Stacey in

Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.

Pre-production

Production

© Mountain Goat Software, LLC

The Scrum project community

(4)

© Mountain Goat Software, LLC

Scrum roles and responsibilities

Defines the features of the product, decides on release date and content

Is responsible for the profitability of the product (ROI)

Prioritizes features according to market value

Can change features and priority every sprint

Accepts or rejects work results

Product

Owner

Ensures that the team is fully functional and productive

Enables close cooperation across all roles and functions and removes

barriers

Shields the team from external interferences

Ensures that the process is followed. Participates in daily scrum, sprint

review and planning meetings

Scrum

Master

Cross-functional, seven plus/minus two ideally full-time members

Selects the sprint backlog

Has the right to do everything within the boundaries of the project

guidelines to reach the sprint goal

Organizes itself and its work

Demos work results to the Product Owner

Team

© Mountain Goat Software, LLC

Scrum

Swim

Crouch

Jump

Sprint

2-4 weeks

Jump

Sprint goal

Sprint

backlog

improved game

Incrementally

(5)

© Mountain Goat Software, LLC

“Scrum facilitates feature iteration, allowing teams

to deliver polished, tuned and integrated features

which can be used to test the creative quality of

the game throughout its development, allowing the

team to incorporate audience feedback as early as

possible in the development process.”

Scrum is iterative

© Mountain Goat Software, LLC

Sequential vs. overlapping

development

Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986.

Rather than doing all of

one thing at a time...

...Scrum teams do a little

of everything all the time

(6)

© Mountain Goat Software, LLC

A sample product backlog

© Mountain Goat Software, LLC

The product backlog iceberg

(7)

© Mountain Goat Software, LLC

Detail is added as an item moves

up the iceberg

© Mountain Goat Software, LLC

(8)

© Mountain Goat Software, LLC

Additional examples

© Mountain Goat Software, LLC

The sprint cycle

Body Text with a bullet and

15

(9)

© Mountain Goat Software, LLC

Product owner describes priorities

Team breaks product backlog items (features)

into tasks

Team commits to some amount of work

Sprint planning meeting

Three questions:

What did you do yesterday?

What will you do today?

What’s in your way?

A commitment between peers, not a management

status meeting

Daily scrum

© Mountain Goat Software, LLC

Team demonstrates what was accomplished

2-hour prep time rule

No PowerPoint!

Anyone can attend

Sprint review meeting

Focus on continuous improvement

(10)

© Mountain Goat Software, LLC

A sprint backlog

Create close punch

animations for attackers

Create close punch

animations for responders

Adjust fight navigation

Fix camera bouncing off

walls

Polish audio

8

16

8

12

8

4

12

16

8

4

11

8

4

8

8

Tune attack percentage in

AI

8

10

16

8

8

© Mountain Goat Software, LLC

Reciprocal commitments

The team commits to delivering

some amount of functionality

The business commits to leave

priorities alone during the sprint

19

(11)

© Mountain Goat Software, LLC

No changes during a sprint

What the team commits to—and what the

product owner agrees to—during sprint

planning should be what is delivered

We start with vague requirements

Our understanding of those requirements is

refined during the sprint

However, keep in mind that...

© Mountain Goat Software, LLC

Abnormal terminations

If change cannot be kept out of a sprint...

The sprint may be abnormally terminated

An extreme circumstance, not done very often

Raises visibility of priority changes

...they feel they cannot meet the goal of a sprint.

Team can abnormally terminate if...

...priorities change.

Business can abnormally terminate if...

(12)

© Mountain Goat Software, LLC

Burndown charts

Primary method of tracking progress

A burndown chart shows how much work is

left as of various dates

Two types

Release burndown

Sprint burndown

© Mountain Goat Software, LLC

A sprint burndown chart

(13)

© Mountain Goat Software, LLC

Hours

40

30

20

10

0

Mon

Tue

Wed

Thu

Fri

Create punch animations

Fix camera bouncing off walls

Polish audio

Tune attack percentage in AI

8

16

8

12

4

12

16

7

11

8

10

16

8

50

© Mountain Goat Software, LLC

Task boards

Story

To Do

Process

In

Verify

To

Done

(14)

© Mountain Goat Software, LLC

Burndown

chart

Tasks

to do

Product

backlog

Completed

tasks

© Mountain Goat Software, LLC

27

(15)

© Mountain Goat Software, LLC

Release planning on long projects

On a multi-year game, break the total project into a

series of shorter interim internal “releases”

Three months is a good horizon

For each release, establish one or a few BHAGs (Big

Hairy Audacious Goals)

© Mountain Goat Software, LLC

Scrum of scrums

(16)

© Mountain Goat Software, LLC

Scrum of scrums of scrums

© Mountain Goat Software, LLC

Augment with orthogonal teams

Beyond a certain team size, augment the team structure

with orthogonal, virtual teams

Programming team

Audio team

AI team

Informal or semi-formal at best

Meet periodically

Discuss and resolve issues related to their specialty

May want to work off their own team backlog

31

(17)

© Mountain Goat Software, LLC

Programmers

Animators

Testers

ScrumMasters

Audio engineers

© Mountain Goat Software, LLC

Upcoming public classes

(18)

© Mountain Goat Software, LLC

Mike Cohn contact info

References

Related documents

Linkedin (2) Data Infrastructure Engineer Mountain View CA. Software Engineer Mountain View

CSX Property Portal – Dashboard 10. The dashboard  provides a snapshot of your applications.  The dashboard can be 

Three step procurement process: RFP (including competitive sealed proposals), prequalification requirements, selection; for non-rail transit projects that exceed $2.5 million,

Initial release plan Architectural Direction Feature backlog Impediment list Product backlog Sprint backlog burndown sprint backlog Product burndown Artifacts  Sprint

© 2008–2011 Mountain Goat Software ® Scrum Cancel Gift wrap Return Sprint 2-4 weeks Return Sprint goal Sprint.. backlog Potentially shippable

© Mountain Goat Software, LLC • Product owner • ScrumMaster • Team Roles Scrum framework • Sprint planning • Sprint review • Sprint retrospective • Daily scrum

Mountain Goat Software, LLC • Product owner • ScrumMaster • Team Roles Scrum framework • Product backlog • Sprint backlog • Burndown charts Artifacts • Sprint planning

® © 2003–2012 Mountain Goat Software ® Programmers ScrumMasters UI Designers Testers DBAs Communities of Practice help scale and cut across Scrum teams. A Scrum