59
Agile Estimating and Planning with SCRUM www.scrumguides.com 14 February 2009

ScrumGuides Agile Estimating And Planning With Scrum

Embed Size (px)

DESCRIPTION

Slides from a training on Agile Estimating And Planning With Scrum by ScrumGuides, day 2(slides in courtesy of Mike Cohn, www.mountaingoatsoftware.com)

Citation preview

Page 1: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM

www.scrumguides.com

14 February 2009

Page 2: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides22

About myself

Alexey Krivitsky

Software developer, Agile coach

Certified ScrumMasterCertified Scrum Practitioner

http://www.linkedin.com/in/alexeykrivitsky

email: [email protected]: alexeykrvicq: 436-471-64gsm: +380 50 358 92 12

Currently building up a training centerwww.scrumguides.com

Page 3: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides3

Our presence

Ukrainian Agile communitywww.agileukraine.org

Join our Google discussion group

Ukrainian SCRUM portalwww.scrum.com.ua

Page 4: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides5

SCRUM recap

Page 5: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides6

Agenda

► Levels of Planning

Requirements in SCRUM

Estimation Techniques

Sprint Planning

Release Planning

Page 6: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides7

The two levels of planning

Strategic level / Story level / product backlog

Tactical level / Task level / spring backlog

Page 7: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides8

From Mike Cohn’s “Planning Agile Projects”

Page 8: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides10

Today’s agenda

Levels of Planning

► Requirements in SCRUM

Estimation Techniques

Sprint Planning

Release Planning

Page 9: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides11

Requirements

What are the requirements to requirements?

Page 10: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides12

The requirements to requirements?

Page 11: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides13

User Story is…

User stories are simple, clear, brief descriptions of functionality that will be valuable to either a user or purchaser of a product

Expressed in a form like:

As a <user> I can <do> so that <value>

Page 12: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides14

Key ideas of User Stories

They highlight negotiation to happen between the customer and the team.

User stories help deferring details till laterThey talk problems not solutionsThey fit nicely as your Product Backlog items

Page 13: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides15

Samples – Travel reservation system

As a user, I can reserve a hotel room.

As a user, I can cancel a reservation.

As a vacation planner, I can see photos of the hotels.

As a user, I can restrict searches so that I only see hotels with available rooms.

15

Page 14: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides16

Details added in smaller substories

As a user, I can cancel a

reservation.As a site visitor, I am

emailed a confirmation of any cancelled reservation.

As a non-premium member, I can cancel up to

24 hours in advance.

As a premium site member, I can cancel a reservation

up to the last minute.

16

Page 15: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides17

Details added as tests

High level tests are added to the story– Can be used to express additional details and expectations

• Verify that a premium member can cancel the same day without a fee.

• Verify that a non-premium member is charged 10% for a same-day cancellation.

• Verify that an email confirmation is sent.• Verify that the hotel is notified of any cancellation.• Figure out what to do if the user’s card is expired.

As a user, I can cancel a reservation.

17

Page 16: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides18

What makes a good story?

Independent

INVEST

Negotiable

Valuable

Estimatable

Small

TestableThanks to Bill Wake for the acronym. See www.xp123.com.

18

Page 17: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides19

Page 18: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides20

Making good user stories

How would you rewrite the following requirement to make it a good user story?

All connections to the database are through a connection pool.

20

Page 19: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides21

The Five Whys

Page 20: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides23

User Stories Workshop

1. PO presents his/her Project Vision

2. PO and the team discuss the Users of the system

3. PO and the team dive into brainstorming on User Stories (new Users might appear at this stage)

4. When they have enough stories, they group them, discard duplicates, discuss priorities, etc.

5. At some stage team estimates the stories

6. ….

Page 21: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides24

The Project Vision

Page 22: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides25

The iPET project

Page 23: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides26

Agile Planning

Levels of Planning

Requirements in SCRUM

► Estimation Techniques

Sprint Planning

Release Planning

Page 24: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides27

Page 25: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides28

From Mike Cohn’s “Agile Estimating and Planning”

Page 26: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides29

Page 27: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides30

Page 28: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides31

Page 29: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides32

Page 30: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides33

Page 31: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides34

A typical issue with estimations

Page 32: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides35

Page 33: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides36

Page 34: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides37

Page 35: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides38

Page 36: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides39

The “Zoo” project

1. Zebra2. Hippopotamus3. Elephant4. Giraffe5. Panda6. Monkey7. Tiger8. Bear9. Sea lion10. Coyote

Page 37: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides40

From Mike Cohn’s “Agile Estimating and Planning”

Page 38: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides41

Estimating in Story Points

Means the relative size of the story:– Login screen is 2– Search feature is 4 (twice bigger)

Unit-less points.

Integrated level of understanding, complexity, risks, feelings…

Precision is enough for release planning.

Easy to estimate, harder to explain.

Don’t inflate

Page 39: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides42

Estimating in Ideal Time

Think of Ideal Time as when– You have no interruptions– You have all you need– You feel good

Think of how many productive hours a day you usually have.

Hard to agree, easy to argue:– I can do it in 10 hours, you can do it in 5. So who is right?– Today I think it is 10h, next month (when I know more) I think it is 2

Easier to explain, harder to estimate.

Time estimates might inflate.

Page 40: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides44

Agile Planning

Levels of Planning

Requirements in SCRUM

Estimation Techniques

► Sprint (Iteration) Planning

Release Planning

Page 41: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides45

Page 42: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides46

Page 43: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides47

Page 44: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides48

Page 45: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides49

Page 46: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides50

What DONE means

Before you start estimating it is very important to agree with your PO on done criteria for the whole product increment.

- So is it done? (the client asks the team)- Yes!- Can I ship it to my clients today?- Well… We will need 2 days to finish

something there…

Page 47: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides51

Agile Planning

Requirements in SCRUM

Estimation Techniques

Levels of Planning

Sprint Planning

► Release Planning

Page 48: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides52

Page 49: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides53

Steering your Projects

“Ready? Fire! Aim… Aim… Aim… Aim…”

© Kent Beck, Martin Fowler“Planning eXtreme Programming”

Page 50: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides54

There are four main parameters to planning

Page 51: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides55

Visualizing the time-scope relationship

Release Burndown

17851620

713512

324155 228 175

0200400600800

100012001400160018002000

1 2 3 4 5 6 7 8

Sprints

Estim

atio

ns

Page 52: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides56

Page 53: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides57

From Mike Cohn’s “Agile Estimating and Planning”

Page 54: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides58

From Mike Cohn’s “Agile Estimating and Planning”

Page 55: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides59

Calibrating Velocity

Page 56: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides60

A SCRUM game

To practice the following concepts:BacklogEstimations in points with Planning PokerSprintsVelocitySprint Planning MeetingSprint Review MeetingRetrospection

Page 57: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides61

Backlog

1. two-stored building2. catholic church3. traffic light4. one-stored building5. one-stored building6. tractor 7. kiosk8. garage for tractor 9. tower cran10. lorry11. garage for lorry 12. kinder garden13. two-stored building 14. one-stored building15. bus stop16. three-stored building

Page 58: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides62

The cycle

Estimate new storiesSprint planning - 3 min– Expected velocity– Everyone knows

what to work onSprint - 3 minDemo - 3 min– Actual velocity– Updated release plan

Retrospection - 3 min

Page 59: ScrumGuides Agile Estimating And Planning With Scrum

Agile Estimating and Planning with SCRUM ©SCRUMguides63

Join our community!

Ukrainian Agile communitywww.agileukraine.org

Join our Google discussion group

Ukrainian SCRUM portalwww.scrum.com.ua