Artificial Critical Paths
I was reading through Corey’s post on Scrum-ban again, and I really liked his point that assigning all the work up front during an iteration plan creates an artificial critical path:
“Another common technique is the late binding of tasks to owners. Some teams will pre-assign all of the known tasks during iteration planning. That’s generally not a good idea because it artificially creates a critical path. Waiting until the “last responsible moment” to assign tasks to people maximizes knowledge and brings you closer to pull.”
It was something I had bumped into multiple times but hadn’t put into words. Early on, I was on two-week iterations. This meant my iteration planning meetings had to be long enough to figure out two weeks worth of work. Worse, even when people were good at estimating their work, it did create this artificial critical path.
Shifting to weekly iterations and estimating just enough work for the week, while knowing the next best things to do, dramatically reduced the overhead and complexity of managing the work. It helped the team respond to bottlenecks and avoid overloading their backpack on a daily basis. It also helped put an extra focus on reducing open work and bringing things to close before starting new work. Ultimately, this helped the team flow value and shift to more demand-driven or pull over supply-driven or push. Responding to demand in today’s world is a good thing, as we lean down, and provide value up.
Comments
Anonymous
June 06, 2010
I am a regular reader of your blog. Being a scrum master myself sometime back I had the same issue. Allocating tasks at the start divided the team into individual members. Each one was taking care of his own set of tasks. Now I stopped allocating upfront. So people take up tasks on the go with teams priority.Anonymous
June 07, 2010
@ Ferose -- I like the way you put that "divided the team into individual members." Tasks on the go do help keep a focus on the bigger picture, answering the question -- what's the next best thing for the team to get done.