better plan your project with agile estimating

Post on 05-Dec-2014

783 Views

Category:

Business

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

The presentation was hold during the BarCamp Phnom Penh 2011.

TRANSCRIPT

Better Plan your Projects with

Agile Estimating

Violeng Mam violeng@web-essentials.asia

Violeng Mam

● BA in Computer Sciences● TYPO3 certif ied Integrator● Project Manager and Team leader

Project Managers Team ● Senior Manager at Web Essentials● 3 years experience working with

international clients

Agenda

● Problems with Estimates● Agile Estimating

● Relative Estimates● Velocity● Our Experience with AE

● Summary

Why plan?

● Keep due dates and budget ● Manage resources ● Build trust with clients ● Reduce risks and last minute surprises ● Create a basis for decision making

→ Control the outcome/future of a project

Activity: Country sizes

Activity: Country sizes

● Switzerland

Activity: Country sizes

● Switzerland● Austria

Activity: Country sizes

● Switzerland● Austria● Czech

Activity: Country sizes

● Switzerland● Austria● Czech● Germany

Activity: Country sizes

● Switzerland● Austria● Czech● Germany● Poland

Activity: Country sizes

● Switzerland 41,277 Km2

● Austria 83,871 Km2

● Czech 78,865 Km2

● Germany 357,114 Km2

● Poland 312,685 Km2

Activity: Country sizes

● Switzerland ½ country pt● Austria?● Czech?● Germany?● Poland?

Activity: Country sizes

● Switzerland ½ country pt.● Austria 1 cpt.● Czech 1 cpt.● Germany 4 cpts.● Poland 4 cpts.

Activity: Country sizes

● It is easier to compare in country points than in actual sizes.

→ Relative Estimations

Relative Estimations

It does not matter what unit we use to measure the size: ● Country Points ● Ideal days ● Bananas...

It is important that the estimates are consistent:

→ Same sizes get same number of points

Relative Estimations

Relative Estimations

Relative Estimations

Building estimates on facts:

If an activity takes longer the chances are high that a similar

activity takes longer, too.

→ Velocity will def ine the time needed

Velocity

● Velocity is the number of 'country points' or 'ideal days' we can do in a set time (e.g. a week)

● Things like interruptions, meetings, infrastructure failures will

● lower our velocity

● As long as our estimate of a task is consistent with our

● estimate for the other tasks, we can use velocity to tell us

● when we will be f inished

Example Project

Image Contest ● Users can upload images ● Users can view uploaded images and rate ● The Winners are displayed and notif ied

Example Project

Velocity

Simplif ied: All 9 tasks are the same size

Assume: After 1 week, 3 tasks f inished

(simplif ied) Velocity = 3 tasks / 5 days = 0.6 tasks / day

Velocity

When will we f inish?

Remaining: 6 tasks

So we can complete (simplif ied):

6 tasks / 0.6 tasks/day = 9 days*

*if we continue with the same velocity, but:

Velocity will get more reliable if tracked over longer period

Example Project

Velocity

Total number of points: 12.5

Assume: ● 3.5 points f inished ● 3 days elapsed

(simplif ied) Velocity = 3.5 points / 3 days = 1.2 points / day

Velocity

When will we f inish? ● Remaining: 9 points

So we can complete (simplif ied):

9 points / 1.2 points/day = 7.5 days 8 days →

Proposition: It is better to track the points we can

complete/week than the remaining days.

Increase accuracy

● Involve the whole team in estimating ● Use non-linear sequences for points such as e.g. Fibonacci:

0, (½), 1, 1, 2, 3, 5, 8, 13, 21, …

● Man-days instead of elapsed time for velocity calculation

● Clearly def ine what means a task is complete

● Verify velocity on a regular basis

Our Experience

Planned and actual completion and scope

How to decrease 'time to f inish'

Monitor effects on velocity regularly and make necessary changes:

● Less interruptions and less multi-tasking (velocity +)

● Give team members more time on project (man days +)

● Add skilled developer to the team (velocity +, man days +)

● Reduce scope of features or project (points -)

Summary

Estimating is a continuous process as we understand more

about how we perform

→ agile = f lexible, well coordinated, quick to move

Summary

Agile Estimating will make your planning more accurate because:

● The whole team is involved

● Estimates of size and duration are separated

● Estimates and plans are based on facts

● Learning and adjusting is fostered

→ Accurate estimates allow for better decision making

Further Reading

Agile Estimating and Planning

by Mike Cohn

Our presentation in TYPO3 Conference 2011 Frankfurt, Germany

http://typo3blogger.de/session-videos-von-der-typo3-conference-2011-t3con11-sind-schon-online/

Questions?

Thank you!violeng@web-essentials.asia

top related