As a techie, I have always freely admitted that my skills lay more in the nitty-gritty of system administration and software development. I’m vastly more comfortable setting up a Linux box or throwing up a quick Python script for management than I am actually being management; when it comes to complex development processes and control of varied workflows, I’m more lost than a bat in the sunlight.
That said, David Anderson’s book Kanban: Successful Evolutionary Change for Your Technology Business was a welcome addition to my bookshelf. It really slims down the overbearing ideas of software development process and management; a topic that can be overwhelmingly intimidating at times due to its scope and often disruptive changes to an already established process and workflow. Anderson cuts down both of these obstacles, presenting a quick and effective solution to both of these problems in a way that even those of us who are not experts on the business side of things.
Anderson’s core philosophy is what he calls “Kanban”, or sign cards in Japan. The basic idea behind Kanban, as Anderson explains it, is based on ideas that Toyota had for its engineering line. They decided that to streamline their process, they would adopt a system based entirely on demand; the system would dictate what to produce, when to produce, and how much to produce based on the amount of demand at any given time.
I will admit that the application of this philosophy to software development is not obvious at first; at least it wasn’t to me. I wasn’t entirely sold on the idea that a factory-floor method for handling production could be effectively applied and translated to something less concrete, like software development. I wasn’t too far off the mark, granted – Anderson’s Kanban method, at least to me, doesn’t bear all that much resemblance to its factory-floor sign card predecessors.
That doesn’t matter much to me though, because bottom line: his method seems amazingly simple and effective. This is not to say it’s simplistic: the book has some ideas, especially towards the end, that were quite masterfully complex. The core idea of Kanban, however, is Zen-like in its simple wisdom: he basically says that there is no Kanban Development Method, one-size-fits-all deal. You have to step back, agree to only make incremental, evolutionary changes to your method, and respect the current processes and workflow ideas that work.
It is through this idea that the core idea of Kanban, both factory-floor and software development, converge: make what you have work by visualizing the workflow and constructing a system around what works for you already. Don’t throw out what’s working well; re-imagine it little by little, refining the process without completely overhauling it in a needlessly stressful way, and only produce what you need when you need it.
There are, of course, more points to the book than that; much of it is dedicated to quantitative analysis and practical ways to implement this in your own project processes. The core value of this book, however, is really what shines; David Anderson’s Kanban provides a simple, efficient method that anyone can tailor and use to make their own software development process more efficient, effective, and pain-free!Our Rating: