20
10 ways to screw up with Scrum and XP Welcome! 1. Sit near the front please! 2. Are you using Scrum or XP? If so grab 3 colored ballots from the stage.

10 ways to screw up with Scrum and XP.pptx

Embed Size (px)

Citation preview

Page 1: 10 ways to screw up with Scrum and XP.pptx

10 ways to screw up with Scrum and XP

Welcome!

1. Sit near the front please!

2. Are you using Scrum or XP? If so grab 3 colored ballots from the stage.

Page 2: 10 ways to screw up with Scrum and XP.pptx

10 ways to screw up with Scrum and XP

Henrik Kniberg - Crisp ABAgile coach, certified scrum trainerJava guy

Cofounder / CTO of Goyada (mobile services)30 developers

Lead architect at Ace Interactive (gaming)20 developers

Chief of development at Tain (gaming)40 developers

[email protected]+46 70 4925284

Page 3: 10 ways to screw up with Scrum and XP.pptx

3

1: ScrumMaster

isn’tis tech guruis too busy to do SM stuffis line manageris not dedicated to teamdoes not know Scrumdoes not have animpediment backlog

Henrik Kniberg 3

SM

10 ways to screw up with Scrum and XP We have work to do. We can’t afford the overhead

of a ScrumMaster!

Impediment backlog• No impediment backlog• Slow workstations• No test environment• No contact with customer• Crowded office

Page 4: 10 ways to screw up with Scrum and XP.pptx

4

2: Definition of Donedon’t have a default DoDdon’t obey itis outside of team’s control

Henrik Kniberg 4

10 ways to screw up with Scrum and XP

See who islogged in

100 concurrentusers

Default Definition of Done• Releasable

• Acceptance tested• release notes written

• No increased technical debt

Default Definition of Done• Unit/Integration tested• Ready for acceptance test• deployed on demo server

But you said you were done!

= I haven’t messed up the codebase

Page 5: 10 ways to screw up with Scrum and XP.pptx

5

3: Velocityisn’t knownisn’t usedis misuseddeath marchesteam asked to promise datesincluding stories that aren’t DoneYo-yo velocity

Henrik Kniberg 5

10 ways to screw up with Scrum and XP What is your velocity?

Huh?

EXAMPLE• Today is Aug 6• Sprint length = 2 weeks• Velocity = 30 - 40

What will be done by X-mas?(10 sprints)

PO

See who islogged in

100 concurrentusers

5

3

8At least

At most

Page 6: 10 ways to screw up with Scrum and XP.pptx

6

4: Retrospectivedoesn’t happendoesn’t result in a list of improvementsimprovements aren’t executedimprovements aren’t followed upunwanted people at the meetingeverybody doesn’t talk

Henrik Kniberg 6

We’re too busy, let’s just start the next sprint

instead

10 ways to screw up with Scrum and XP

Sprint

Vel

ocit

y

4 5 6 7 8 9 10 11 121 2 3 13

Page 7: 10 ways to screw up with Scrum and XP.pptx

7

2008-01-31

Henrik Kniberg7

Sprint retrospectivePart 1: What happened?

Jeff sick

Week 1 Week 2 Week 3

Story #25 removed

from sprint

LAN shootout

First storyready for

test

First storyready for

test

SprintdemoBig

argument Team flow!

10 ways to screw up with Scrum and XP

Page 8: 10 ways to screw up with Scrum and XP.pptx

8

2008-01-31

Henrik Kniberg8

Sprint retrospectivePart 2: What do we do differently next sprint?

10 ways to screw up with Scrum and XP

Page 9: 10 ways to screw up with Scrum and XP.pptx

9

5: Team commitmentTeam is pressuredTeam doesn’t track & learnAlways undercommittingAlways overcommittingVelocity = 0Not allowing slack

Henrik Kniberg

10 ways to screw up with Scrum and XP You have to do more!

EstimatedVelocity

ActualVelocity

40 3030 2830 3330 30

Estimated Actual

40 3040 3040 30

Estimated Actual

40 3050 3060 30

Page 10: 10 ways to screw up with Scrum and XP.pptx

10

6: Technical debtLetting it pile upIgnoring it

Henrik Kniberg

10 ways to screw up with Scrum and XP We don’t have time to write unit tests or

refactor code!

Vmax

Vactual

velo

city

time

Vmax

velo

city

time

VactualSustainable pace!

• Duplicated code• Lack of test coverage• Unreadable code

Page 11: 10 ways to screw up with Scrum and XP.pptx

11

Dealing with technical debt

Henrik Kniberg

10 ways to screw up with Scrum and XP

Vmax

Vactual

velo

city

time

First stepSlow down

Stop accumulating debt

Second step(optional)

Slow down even moreStart repaying debt

Sustainable pace

Definition of Done• .... bla bla ....• No increased technical debt

Definition of Done• .... bla bla ....• Technical debt decreased

Page 12: 10 ways to screw up with Scrum and XP.pptx

12

7: TeamworkFixed rolesPersonal backlogsNot helping each otherImplementing all stories in parallellExternal management

Henrik Kniberg

10 ways to screw up with Scrum and XP Well, at least I finished my stuff!

Page 13: 10 ways to screw up with Scrum and XP.pptx

13

8: Product backlog & product owner

PBL doesn’t existPBL not visibleNever-ending storiesToo big storiesPBL not maintained by POPO surprised at sprint demoPO not prioritizing

Henrik Kniberg

10 ways to screw up with Scrum and XP I don’t have time to maintain the damned

product backlog!

PO

See who islogged in

100 concurrentusers

5

3

8

8

5

3

5

5

5

35

5

8

ProductBacklog

Page 14: 10 ways to screw up with Scrum and XP.pptx

14

V V V

V

2009

Q42008

Q32008

June2008

May2008

2009

2010

2011

2012

Henrik Kniberg

Apr2008

10 ways to screw up with Scrum and XP

Page 15: 10 ways to screw up with Scrum and XP.pptx

15

9: MergophobiaNo ”Done” branchNo branch policiesNot integrating dailyNot taking responsibilityHiding behind branches

Henrik Kniberg

10 ways to screw up with Scrum and XP Merging is a pain, so we do it as seldom as possible

Sorry, but

You can’t get an agile company without agile engineering practices

XP, anyone?

Page 16: 10 ways to screw up with Scrum and XP.pptx

16

Version control – multiple teams

TrunkPolicy:

Only stuff that is DONE!

m1

Timeline

Sprint 1

m2

Release!

Team A workPolicy:

Unit tested

a1 a2 a3

Team B workPolicy:

Unit tested

b1 b2 b3

Day 1 Day 2 Day 3 Day 4 Day 5

a4

Day 6

Henrik Kniberg

Guidelines• Trunk always releasable• Broken trunk = stop the line• Merge from trunk every day• Copy to trunk each time

a story is completed

Page 17: 10 ways to screw up with Scrum and XP.pptx

17

10: Sprint backlogdoesn’t existtoo far from the teamtoo complicatednot used during Daily Scrumformat not chosen by teamnot owned by the teamno burndownnot updated dailywarning signs ignored

Henrik Kniberg

10 ways to screw up with Scrum and XP Oh you mean that thing that the ScrumMaster

fiddles with sometimes?

Page 18: 10 ways to screw up with Scrum and XP.pptx

18

10 ways to screw up with Scrum and XP

Henrik Kniberg 18

Burndown

Warning signs

Page 19: 10 ways to screw up with Scrum and XP.pptx

19

11: Worrying too much about the problems

Henrik Kniberg

10 ways to screw up with Scrum and XP We should stop this agile stuff, since we’re

obviously doing it all wrong

Problems are normalNever stop looking for problemsDon’t panic, don’t despairVisible problem = killable problem

= opportunity for improvement!Prioritize and fix problems - one by one!Look back once in a whileand pat yourselves on the back

Page 20: 10 ways to screw up with Scrum and XP.pptx

20Henrik Kniberg 20

Sail with pleasure!The rocks make it more exciting :o)