agile estimation and planning

Post on 10-May-2015

982 Views

Category:

Business

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation given at XMPie about the topic. Done as a part of the ILTechTalks initiative.

TRANSCRIPT

Agile estimation and planningElad Sofer -Agile coach.

blog - http://blog.thescrumster.com LinkedIn - http://www.linkedin.com/in/eladsofer

How to estimate this task?

Persistence of time

How long will it take to…

• Read the bible

• Drive to Paris ?

• Solve a math equation ?

• Add support for LDAP ?

Estimate tasks in relative size

• We are not good in measuring absolute values.

• We are good in comparing things.

• We have the basic math skills (or a calculator).

• High accuracy has a high toll.

• Estimates become commitments

• Time is not persistent.

Story points• Name is derived from user stories.• They reflect the “bigness” of a user story.

– How hard it is ?– How risky it is ?– How much of it there is ?

• Relative values matters.• Unitless.• Point values “include uncertainty”.• Easy and quick

– A little effort helps a lot– A lot of effort helps a little more

Estimation techniques• Expert opinion• Analogy• Educated guess• Disaggregating

• Planning poker

Planning poker

1. Each person gets a deck of cards.

2. The item to be estimated is read to all.

3. Attendants ask clarifications for the item.

4. Each person selects a card and puts it on the table facing down.

5. When everyone is done, cards are exposed.

6. If the estimations do not match a short discussion is done. -> Goto 4.

7. Handle next item.

Why planning poker works?

• Those who do the work estimate it.

• Emphasizes relative estimation

• Estimates are within one order of magnitude.

• Reduces anchoring - Everyone's opinion is heard.

Specification length

•One page spec

•Group A

•7 Pages spec

•Group B

173 hours

117 hours

Irrelevant information

•Group A

•added irrelevant details:•End user desktop apps•Usernames & passwords•Etc.

•Group B

39 hours

20 hours

Extra requirements

•Requirements 1-4

•Group A

•Requirements 1-5

•Group B4 hours

4 hours

•Requirements 1-5 but told to estimate 1-4 only

•Group C8 hours

Given anchor

•Group A

•Customer thinks 500 •customer has no technical knowledge•Don’t let the customer influence you

•Group B

555 hours

456 hours

•Same as B customer thinks 50

•Group C99 hours

Why planning poker works?

• Those who do the work estimate it.• Emphasizes relative estimation• Estimates are within one order of

magnitude.• Reduces anchoring - Everyone's opinion

is heard.• Modeled for open discussion – forces

thinking.• It’s quick & fun !

Why traditional planning fails

• Plan is not adaptive.• Focus on activities – Not on features

– Never finish early.– Lateness is passed down.– Dependencies.

• Plan is not priority driven.– Higher risk.– Lower ROI.

• Belief that customers will not change• Estimates become commitments.

What makes planning agile?

• Planning Is not considered as a phase in the project• Focus on business priorities• Deliver something each iteration.• Changes are expected, embrace change.• Plans are easily correctable.• Plan by feature not by activity.• Clear definition of progress

50% = 50% of features complete.

• And…

“It’s better to be roughly right than precisely wrong.”

[John Maynard Keynes[

Product

Portfolio

Strategy

Continuous planning

Daily

Iteration

Release

First, We need a backlog

StoryValueEstimateRisk…

As a user I want to log in securely.

As a user I want to see my balance

As a user I want to see last transactions.

As a manager I want balance report

As a manager I want a report of customer with overdraft.

As a user I want to perform stock operations.

Add value

StoryValueEstimateRisk…

As a user I want to log in securely.

10

As a user I want to see my balance

100

As a user I want to see last transactions.

70

As a manager I want balance report

60

As a manager I want a report of customer with overdraft.

80

As a user I want to perform stock operations.

30

Estimate & asses risk

StoryValueEstimateRisk…

As a user I want to log in securely.

105Low

As a user I want to see my balance

1008Low

As a user I want to see last transactions.

7020Medium

As a manager I want balance report

60BIGMedium

As a manager I want a report of customer with overdraft.

8013Low

As a user I want to perform stock operations.

30BIGHIGH

Prioritization guidelines

Now it is prioritized – We are ready

StoryValueEstimateRisk…

As a user I want to see my balance

1008Low

As a user I want to see last transactions.

7020Medium

As a user I want to perform stock operations.

30BIGHIGH

As a manager I want a report of customer with overdraft.

8013Low

As a manager I want balance report

60BIGMedium

As a user I want to log in securely.

105Low

Sprinting…

• Before the sprint:– The team committed to the following:

• As a user I want to see my balance

• As a user I want to see last transactions.

– Creates the sprint backlog:• They break it down into tasks.• They estimate the time for

each task.

Tracking progress (day 1)

Tracking progress (day 3)

Tracking progress (day 6)

Tracking progress (End)

When the Sprint has finished:

• We now know the current velocity.– Only DONE items count.

• We can now start and “realistically” estimate the expected progress.

Velocity

• How many points can the team(s) complete in one iteration.

• Easy to measure.

• Fixes estimation errors.

• Easily reflects the project status.

• Primary parameter in planning.

How to calculate time?

Burn down charts

• Increase visibility

• Easy to understand.

• Updated automatically & immediately.

• Usually used on release & sprint level.

So what will it be?

For more information:

Read this

book

And visit my blog

top related