Working in our interesting, yet challenging (distributed, part-time, non-committed bandwidth) environment, the concept of planning, estimation and determining a consistent velocity has been less than ideal … often frustrating.
I am pondering over a way to better estimate and normalise our part-time delivery capabilities.
My current thoughts are as follows.
- Encourage a developer/contributor and a tester/reviewer pair per story.
- Team finds smallest story that can be created and validated in full day, relating it to one story point.
- Team estimates the remaining tasks, using the 1 story point task as a reference.
- Split up big stories into smaller stories that are equal or less to the part-time sprint maximum (see below).
- Normalise velocity estimates by estimating how many story points can realistically be delivered per pair on a part-time basis when planning the potentially shippable iteration (psi), spanning 3-5 sprints.
- Review and normalise the velocity estimates for each project after each sprint.
- Reviewed and normalised velocity is only valid for the duration of the iteration, after which team complement usually changes.