The “Bucket System” is a way to do estimation of large numbers of items with a small to medium sized group of people, and to do it quickly. The Bucket System has the following qualities which make it particularly suitable for use in Agile environments where estimation is required:
- It’s fast! Using the Bucket System, a couple hundred items can be estimated in as little time as one hour.
- It’s collaborative. Everyone in a group participates roughly equally.
- It provides relative results not absolute estimates (points vs. hours).
- The results are not traceable to individuals and so it encourages group accountability.
- The Bucket System works with teams to estimate effort or with stakeholders to estimate value.
The Bucket System of estimation works as follows:
- Set up the physical environment as per the diagram below. Ensure that all the items to be estimated are written on cards.
- Choose an item at random from the collection. Read it to the group. Place it in the “8″ bucket. This item is our first reference item.
- Choose another item at random from the collection. Read it to the group. The group discusses its relative position on the scale. Once consensus has been reached, put the item in the appropriate bucket.
- Choose a third item at random and, after discussion and consensus is reached, place it in the appropriate bucket.
- If the random items have clearly skewed the scale towards one end or the other, re-scale the items (e.g. if the first item is actually very small and should be in the “1″ bucket).
- Divide and conquer. Allocate all the remaining items equally to all the participants. Each participant places items on the scale without discussion with other participants. If a person has an item that they truly do not understand, then that item can be offered to someone else.
- Sanity check! Everyone quietly reviews the items on the scale. If a participant finds an item that they believe is out of place, they are welcome to bring it to the attention of the group. The group then discusses it until consensus is reached and it is placed in one of the buckets.
- Write the bucket numbers on the cards so that the estimates are recorded.
Some important points to consider about Agile estimation with the bucket system:
- The Bucket system allows for multiple items being in the same bucket.
- Items cannot be placed “between” buckets to represent a more precise estimate.
- If the distribution of the items is skewed to either end of the scale, then during the sanity check step the group should also discuss if the items can and should be spread out more evenly along the scale. If so, then the group does it collectively.
- The facilitator should watch to make sure that no one moves items that have already been placed until the “sanity check” step.
- The division of items among participants does not need to be exactly equal – don’t worry about “dealing” out the items. Instead, just divide them up roughly.
- If the Bucket System’s “divide and conquer” stage has one or two people working very slowly through their items, it is acceptable to suggest that they share their remaining items with people who are already finished.
- It is not acceptable for an individual to completely abstain from the process. If someone desires to abstain, they should be counselled that this means they will not have any say in future estimates.
- During the “divide and conquer” stage it is critical that absolute silence is maintained. In particular, there should be no bilateral discussion of items. This is to protect the anonymity of individuals placing items as much as possible.