Massive project, many obstacles
When we first kicked off a massive, technical project for a client, I’ll admit, I was nervous. With a fast and fixed deadline, lots of moving parts, in-depth collaboration with many external vendors, and lots of unknowns, this was a project that seemed doomed from the start. So in order to help keep track of the dizzying amount of work ahead of us, we created a Kanban board.
Visualizing the big picture
The Kanban board is a tool to help visualize the work for any project. It provides a level of transparency that allows anyone, even someone unfamiliar with the project, to understand the status of a project at a single glance.
It starts with story cards. A story card (a sticky note on the board) is essentially a description of a task that needs to be completed. Each developer picks a card from the “Open Work” bucket, writes their initials on it, and moves it to “In-progress” column. When the task is complete, they move the sticky to the “Ready for QA” bucket, grab a new task, and repeat the process. QA then tests each task in the “Ready for QA” bucket, and either moves the card to “Complete” if there are no issues, or sends it back to “In-progress” if bugs are found.
When we first started the project, we were waiting on quite a bit of work from external vendors, and there simply wasn’t time to wait for this work to be delivered if we wanted to meet our deadline. By placing tasks that were waiting on vendors into the “Blocked” category, we were able to reduce confusion over what work was available and clearly see how much work was “on hold.” As more vendor work was delivered, those blocked tasks were moved to the “Open Work” bucket, and team members could start working on those tasks without needing to wait for status updates.
Each morning, the team gathered around the Kanban board for a 15 minute, stand-up meeting that involved each team member answering three key questions about their progress:
- What did you work on yesterday?
- What are you working on today?
- What is blocking your progress?
As team members answered these questions, they moved the stickies from column to column, giving an up-to-date picture of the overall status of the project.
One of the major benefits of this system was that it helped visualize bottlenecks – are a majority of tasks blocked? Is QA overwhelmed with work? Does the amount of open work look achievable with the time remaining? Any outsider could view the board and instantly understand the status and health of the project without having to interrupt a single team member.
In the end, the board was an overwhelming success. The team all agreed that the board made collaboration easier by clearly identifying which tasks were available to work on, who was working on each task, and how much of the project remained. It helped us hit our deadline in spite of the setbacks and challenges we dealt with along the way. The Kanban board is one tool that we will certainly try to use again in Springbox projects moving forward.