41

Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not
Page 2: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Advanced Scrum and agile

developmentClinton Keith

Page 3: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

This session• Applying the “inspect and adapt”

principle to the use of agile in making games:• What have we learned?• What is working?• What do we need to stop doing?• What do we need to start doing?

• Real world challenges and solutions

Page 4: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Clinton Keith

24 years of development experience

15 years of game development experience5 years of agile development experience in the game industryIntroduced agile to the

industry in March 2005

Agile coachand trainer

Page 5: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Agenda

•3 minute tour•Challenges & Solutions•Summary•Q&A

Page 6: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

A 3 minute tour of Scrum

Page 7: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

© 2009 Clinton Keith

Scrum

Swim

Crouch

Jump

Sprint2-4 weeks

Jump

Sprint goal

Sprint backlog Incrementallyimproved game

Productbacklog

FlySwim

Fly

Crouch

24 hours

Page 8: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

© 2009 Clinton Keith

Putting it all together

Page 9: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

© 2009 Clinton Keith

The Scrum project community

Programmer Designer

Designer

Programmer

Tester

Artist

Animator

Artist

Internaldirector

Publisherproducer

The team

ScrumMaster

Product Owner

Anyone(not an

authority role)

Page 10: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

The Roadmap

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

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

Stage 3• Master• Never ends• Self organization• Continuous improvement

Page 11: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Project Leadership

Time

Directed Management

Facilitative / Coaching

Time

Page 12: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

•3 minute tour•Challenges & Solutions•Summary•Q&A

Page 13: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Switching from a push system to a pull system

• What is a “pull system”?• “Pushing” tasks through Scrum• The challenge of pull systems.• Defining done

Page 14: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Scrum is a pull system

Sprintgoal

Not started In progress Done

Page 15: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Why a pull system?

• “Done” is the goal, not task completion

• Creates a “real” pace• Minimizes debt

• Allows true velocity to be measured• Velocity is a better measure than

progress against a schedule• Focuses on what is “on the screen”, not

progress against a schedule• Reality vs “the plan”

Page 16: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Burning down hours?

Tracking story points completed?

Work tracked in days not hours?

Page 17: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

“Pushing” tasks through Scrum

Sprintgoal

Not started In progress Done

Page 18: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Pushing tasks in Scrum• Task completion is the goal• Goals often left incomplete

• Bugs• Missing, yet unstated, requirements

• Velocity is slower• Collisions at the end of the sprint• More multi-tasking

• Symptoms• Mini-crunch every sprint• Very few iterations on the sprint goal• Not much polish

Page 19: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

The challenge with moving toa pull system in Scrum

• Over reliance on tools• Daily scrums are not status reporting

meetings

• “Over managing” the team• Let the team manage the tasks (i.e. the

path to achieving the goal). • Help them make the right decisions

• Teams not taking ownership or making commitments• Common for teams new to Scrum

• Defining “done”

Page 20: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

© 2003–2008 Mike Cohn or Clinton Keith

Concept

Proof of concept

Visualization

Playable

Polish

Target 30 fps

Magazine demo

Online

Shippable

Defining Done

Page 21: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

The product owner

Page 22: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

The product owner

• Represents the customers• One voice, even if not one person

• Usually an• Internal Director• Publisher Producer

• Supplement with someone onsite

• Main responsibility is knowing what to build and in what sequence

Page 23: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Communicating vision

Backlog

DeveloperPO

PublisherPO

TeamMarketing

Executives

Sales

Page 24: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Parts on the garage floor

Leads to iterative and incremental death marches

Page 25: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Documentation has its place

!

Page 26: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Agile phases for game development

Page 27: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Agile is phase-less

Iteration

Concept

Design

Development

Production

Iteration

Concept

Design

Development

Production

Iteration

Concept

Design

Development

Production

...is game development?

Page 28: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Not Quite

0%

25%

50%

75%

100%

PreProd

uctio

n #1

PreProd

uctio

n #2

PreProd

uctio

n #3

Produc

tion #

1

Produc

tion #

2

Produc

tion #

3

Produc

tion #

4

Alpha/B

eta

ConceptDesignDevelopmentProduction

Page 29: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Preproduction vs Production

Preproduction Production

Questions or

StatementsWhat and how? Build it!

State of mind Collaboration Flow

Goals Correctness Efficiency

Page 30: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Which process?

What and how? Build it!

Collaboration Flow

Correctness Efficiency

Scrum Lean

Page 31: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

What is Lean?

• Agile development methodology that is not as well known as Scrum.

• Focused on complex flow of work and pull systems to represent that flow.

• Are better suited to more predictable work-flow.

Page 32: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

The problem using Scrum for productionScrum does not represent multi-step workflow transparently.

Model Rig AnimateAudiopass

End of sprint

Model Rig AnimateAudiopass

Team fails to achieve goal....all work-in-progress (WIP)

Page 33: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Cross-discipline teams cannot share the work evenly

Model Rig AnimateAudiopass

End of sprint

Model?

The problem using Scrum for production

Discipline pools can help, but they promote local optimization, which works against flow

Page 34: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

If the work is repeatable...

Model Rig AnimateAudiopass

End of sprint

Model Rig AnimateAudiopass

Model RigAnimateAudiopass

ModelRig AnimateAudiopass

It should flow

Done

WIP

WIP

WIP

Done

Done

Done

Page 35: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Time-boxing Art

A time-box is a fixed length of time given to produce results. The results are variable.

“When forced to work within a strict framework the imagination is taxed to its utmost-and will produce richest ideas. Given total freedom the work is likely to sprawl.” -TS Eliot

Page 36: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Finding the right timebox

Timeboxshould keep

us here

Value

to

Customer

Cost

Page 37: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Kanban Board

Concept andOutline

Low Rez &Layout High Rez Audio Tuning pass

Billy Robert R.J Carlos Mike

Charles

Andrea Scott

ConceptLow pass

High rezgeometry

Gameplay tuning

Audio layout

Page 38: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

•3 minute tour•Challenges & Solutions•Summary•Q&A

Page 39: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Real world experiences• Scrum teams experience less crunch, especially at post-

alpha

• If they establish a definition of done & share a vision

• Scrum game teams can miss release dates

• #1 reason: production debt

• Lean is a better fit for production

• It’s compatible with Scrum

• Success is not determined by agile

• Vision

• Talent

• Teamwork

• Leadership

Page 40: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Agile Game Development book

• Fall 2009 release• ISBN 0321618521

• Currently in 2nd draft• Want feedback

• See me after

Page 41: Advanced Scrum and agiletwvideo01.ubm-us.net/.../ClintonKeith_AdvancedScrum.pdfThe challenge with moving to a pull system in Scrum • Over reliance on tools • Daily scrums are not

Conclusion

• For more information• www.AgileGameDevelopment.com• www.ClintonKeith.com

• Onsite workshops• Public classes• Coaching• Info up front

• CSM class with Mike Cohn in Boston• May 6-7

• Questions?