How far into the future does your team assign tasks for?
How far into the future does your team assign tasks for? For example, does your team leave all tasks unassigned and simply ensure that each team member always has approximately 1 days worth of tasks assigned to them? IMHO this would appear to be ideal. I've also worked on a team recently where they like to assign all tasks on day 1 of the sprint and they simply reassign the tasks as needed within the sprint.
Why assign work at all? Why not let Development Team members pull new work as and when they have the capacity?
During a daily scrum your team members are stating what tasks they plan to work on over the next 24 hours. As they state these things are those tasks that they call out that are still in the to-do column assigned to them or are they left unassigned? I'm specifically looking for what you do in practice and not necessarily in theory. I get that in theory not assigning is ideal as things can change rapidly from one day to the next.
Planning to do something, even within a 24-hour timeframe, is not the same as actually doing it. That is what we know for sure in practice. Even the plan agreed in a Daily Scrum can be subject to replanning and change.
Hence an item should be left as "to-do" in the Sprint Backlog until it is actually picked up. Team members should pull the work to them when they are ready for it and the board should show that truth. A Daily Scrum ought to take projected team member availability into consideration. Collaboration and revision of the resulting plan should continue throughout the day.
If work is being assigned precociously before it is being actioned, it suggests that there may be cherry-picking going on, or perhaps skill-silos which are inhibiting lean flow.
I just thought I'd update everyone as to how this worked out for my team. We previously worked as a team to assign 1-3 days worth of tasks to team members. As team members completed all of their tasks then we'd identify another 1-3 days worth of tasks for them to work on.
This last sprint we tried to keep all tasks unassigned and only assign a task when it went in progress or if it really truely needed to be done by a specific person. So far I've been getting a lot of positive feedback from team members. I observe we're focused more on working closer together on the top things on our taskboard. I observe that I as Scrum Master and lead developer I'm getting fewer people coming to me saying "I completed my tasks what should I work on next?"