Kanban - Project Management
I talked about Scrum/Agile yesterday and today I am going to give a 10 second overview of Kanban (my preferred method of Agile).
Kanban is simply a pull-method rather than a push of Scrum.
What does that mean? In Scrum, we have a sprint planning meeting and push items into the queue at the beginning of a sprint. In Kanban, you simply work and keep moving stories forward on the board.
That is example of a kanban board (which technically is a bit redundant, billboard board). The WIP number is the maximum work in progress. The columns can be called anything, but this is similar to what I usually see. The initial in the top left of stories is the dev working on it, I have actually seen magnetic characters that people put on the story, which I think is brilliant, you can only work on one thing at a time in that situation. The initial in the top right is the QA assigned to it. The initial in the bottom right is the PM who is to approve it and move it to release.
The PM keeps the priority of the To Do column accurate... when a dev moves a story from Dev to QA, they take the next story from the To Do column (sometimes referred to as the backlog). This creates a steady workflow, cross-training (you take the next thing, not the next thing you are good at), and visual progress of how a story moves through the pipeline.
When do you actually release?
You release whenever you want and whatever is in the ready to release column gets released. PERIOD. What does that gain? You don't release stories that have dependencies on things that are not done. You are forced to truly complete something end to end. Stories are forced to be written so that when they are "done" they can be released immediately.
Small, incremental changes, lead to a better quality of product, faster turnaround on defects, and a strong sense of ownership of a story, because we see it released.
I have seen people put a limit of things in the release column, which really inspires people. You KNOW when you complete 10 stories, a release is going out. That is exciting. @Krogsgard said something that made me smile, "I release, I celebrate." Everyone likes to release because it means you completed something.
I guess this kind of leads into another topic (maybe for tomorrow)... What kills morale in a development team? I'll answer that question tomorrow.
Thanks for stopping by...