After we get the stories from the customer, the stories are broken down to tasks, the tasks are estimated. What happens next? Well, there are two ways to go about tasks during each iteration:
- Do tasks one at the time,
- Fill your bag.
One at the time
The developers pick up the task they would like to tackle. Then they work on it until it is done, then they take another task.
It does not create bottlenecks. When the task is finished, you take another one. If some pair gets stuck on one, the other tasks can still be going well. This approach also makes the pair focus on one task at the time.
The task estimate is a subject to change when somebody signs up for the task.
Fill your bag
Every pair signs up for tasks until their bag for the iteration is full. The tasks are assigned by some kind of auction where developers take ownership and estimate their tasks. It is usually those who took the story and broke it down into tasks.
The customer can have a better idea what will get done in the iteration and by whom. Developers can also have a sense of progress and a better sense of how all tasks fit into the story.
It can create a bottleneck. Some developers might get stuck on a task or can spend more time on it.