We have 3993 guests online

What's the point in estimating?

E-mail
Written by OE   
Monday, 10 December 2007 05:35
agile software development - estimating using fibonacci numbers as pointsOne technique used by agile development teams is the idea of estimating product features using points. This has a few distinct advantages over estimating in physical units of time, e.g. hours or days:

1. Estimating is very quick because it's an intuitive estimate of a feature's size.

2. An estimate in points indicates a feature's size relative to another, and does not give the illusion of being precise.

3. Over time, and using consistent iterations (e.g. 2-week sprints), you get a strong feel for how many points a team can deliver in an iteration. Even if a team is bad at estimating, as long as they're consistently bad, this makes a team's commitments self-correcting.

Some agile teams use Fibonacci numbers to do this. Fibonacci numbers are a sequence where each number is the sum of the previous two, i.e:

1, 2, 3, 5, 8, 13, 21 ...

Using Fibonacci adds an element of science to the concept of estimating using points, adding the laws of distribution as a dimension.

If you're interested in understanding more about the scientific background of Fibonacci numbers - which weren't invented for agile development by the way! - you might be interested to listen to this Radio 4 podcast on Fibonacci...

See also:
How to estimate your product backlog

What's the point in estimating?


Read the full Story >>

Comments (0)Add Comment


Write comment

You must be logged in to post a comment. Please register if you do not have an account yet.

busy
Last Updated on Wednesday, 28 January 2009 12:42
 

Agile Marketplace - Announcements and Special Offers

Webcast:  Moving Build and Code Quality Upstream
This interactive panel discussion moderated by Bob Aiello, Editor-in-Chief fo the CM Journal brings industry experts Anders Wallgren, CTO of Electric Cloud and Gwyn Fisher, CTO of Klocwork together for a candid discussion of the cost savings, productivity and quality benefits that can be achieved by stabilizing builds and code quality as early in the development cycle as possible.
Register Now!

Collabnet -TeamForge 5.3
CollabNet TeamForge 5.3 includes Dynamic Planning—providing flexibility to model release scope and timeline in a single view. Now, you can easily manipulate/adjust release data.
Download Your Free Trial

Requirements-based testing (RBT) can help to ensure comprehensive test coverage, reducing the risk of failure and improving software quality. This white paper details how application lifecycle management can be used to more effectively implement RBT processes, offering greater collaboration, traceability and control.can help you increase efficiency, reduce project risk, and improve overall software quality. Learn how MKS Integrity for application lifecycle management enables RBT, delivering full lifecycle traceability to help ensure that project requirements have complete test planning and execution coverage.
Download the Requirements-Based Testing whitepaper

PureCM –SCM for Agile Teams
PureCM helps you to manage development in short iterations: keeping track of changes, supporting automated builds and preserving frequent snapshots of your projects.
Get the free trial now