I would like to see anyone, prophet, king or God, convince a thousand cats to do the same thing at the same time. ― Neil Gaiman
Kanban, from the Japanese “Kan” (“Visual”) and “Ban” (“Board” or “Card”), is a technique useful for managing a software development process in a highly efficient way.
It enables us to visualize our workflow, limit our work in progress, and optimize our “cycle time”.
Now I guess your next question; limit? Why have I to limit, as a Project Manager, the workflow? Shouldn’t we try to produce as quickly as possible?
The answer isn’t so simple; there exists many bottlenecks that we should remove in order to have a fluent river on its bed.
This technique helps us find bottlenecks and improve quality.
We have to consider the software development process as a stream with requests (our “desiderata”) gushing from the source (the owner of the process, who can give us what we usually call User Requirements) and the improved software flowing into the sea.
During the flowing, there will be some kind of process and this process we have to detail in order to get a success.
Let’s consider a really simple software development lifecycle, with main stages such as Analysis, Design, Development, Test, and Release.
What would happen if our developers realized too many features and the testers weren’t so rapid to check them? We could think the same if the bottleneck was between the analysis and the designer stage.
A bottleneck in a stream is something like a restriction in the bed of the river; have you ever seen one? It restricts flow so that the flowing turns out to be limited to the obstacle imposed by the bottleneck.
Kanban will show us the bottlenecks
Kanban is simple, but incredibly powerful. There are many kinds of Kanban systems, but we can start with a Kanban system that consists of a big board on the wall (if you’re not be able to use the wall, you could use a computer software that simulates the board) with cards or sticky notes placed in columns (that represent your stages, for example) with numbers at the top.
The cards represent work items as they flow through the development process represented by the columns. The numbers at the top of each column are limits imposed on the number of cards allowed in each column; there’s not a rule to choose the limits, we can decide them depending on the number of tasks that our team is able to take home without creating bottlenecks.
The limits are the critical difference between a Kanban board and any other visual storyboard. Limiting the amount of work-in-progress (WIP), at each step in the process, prevents overproduction and reveals bottlenecks dynamically, so that you can address them before they get out of hand.
Let’s identify the main stages in our process.
We mentioned, as an example, Analysis, Design, Development, Test, and Release.
Let’s draw a Kanban board with the stages represented on the columns, as in the following figure.
Click to enlarge
I’d like to leave you some tools I found really useful for starting this adventure using the Kanban technique.
I’m personally using Kanbanize, a free online Kanban board – https://kanbanize.com/
Another useful online tool is KanbanFlow – https://Kanbanflow.com/
Lately I started using Trello – https://trello.com/; it’s a really nice tool with, as the others, the possibility to have an app on your smartphone or tablet to synchronize your projects and take them always with you.
I’m an enthusiastic and highly motivated PMP and Prince2 (Foundation) Senior Program Manager with 16+ years experience in the Healthcare industry. I often work in highly pressurized and challenging environments, managing a large-scale software development program up to an order value of €6M. I’m extremely professional in approach and behaviour, adaptable to change, very meticulous, collaborative, energetic, resilient, innovative, proactive and pragmatic. I’m passionate about process improvement, technology innovation, knowledge sharing techniques and how businesses can capitalize on social media integration. My greatest strength is helping to focus my organization’s efforts on the activities necessary to achieve strategic goals and objectives in order to consistently meet both the customer’s and business’ needs; on time and under budget.
Help the growth of this blog
My week on Twitter 🎉: 1 Mention, 20 Mention Reach, 1 Like, 4 New Followers. See yours with sumall.com/performan… pic.twitter.com/XYO3…
The latest The Program Manager's Paper! paper.li/SaverioLosi… #pmot
My week on Twitter 🎉: 1 Retweet, 1.55K Retweet Reach, 1 New Follower. See yours with sumall.com/performan…
How to build (and rebuild) #trust
An incredibly effective video about how to be #empathetic, how to #communicate logic and how to be #authentic that is how to build and rebuild trust everytime. #TedTalk ted.com/talks/france…
The latest The Program Manager's Paper! paper.li/SaverioLosi… Thanks to @SusanneMadsen #pmot
Buon proposito del 2019. Voglio leggere 10 libri.
My week on Twitter 🎉: 2 Mentions, 1.07K Mention Reach, 1 Like. See yours with sumall.com/performan… pic.twitter.com/nIe1…
The latest The Program Manager's Paper! paper.li/SaverioLosi… Thanks to @SusanneMadsen #pmot #leadership
My week on Twitter 🎉: 2 Mentions, 1.07K Mention Reach, 1 New Follower. See yours with sumall.com/performan… pic.twitter.com/vXFO…