Coming Around to Kanban-ilism
I have always liked Lean, even though it‘s really poorly represented in the literature. The Poppendieck book was all there was for a long time, and that has some good stuff in it, but is not so great in other ways (very much written by people who‘ve never even toured a trench let alone done a tour in one). And Kanban has always been appealing to me. When I heard that a lot of people were abandoning all other Agile practices and using just Kanban I thought ‘ok, Agile has reached the hippie stage.‘ I‘m starting to come around to this way of thinking.
There are a number of reasons for this:
- The primacy of the Kanban is hard to deny once you start using it. It‘s where you go to see what is going on, what to pickup, etc.
- In a lot of ways, all the other stuff just becomes a feeder. In other words, if 90% of your operational focus is on kanban, the process of getting things into the backlog and understanding how big they are, what the choices in building them out, etc., is just a way to get the raw material ready to be worked on.
- I am thinking that if you had a more rigorous Kanban, you would pull a lot of those activities onto the kanban itself and then you really don‘t need much of the other stuff. For instance, idea comes up for a feature, goes in Entered, then if the next column over is Estimated, and your team is using, say, Planning Poker, you could call a meeting, peel the items out one at a time, estimate them, then move them over.
- One of the things that having the iPad has taught me is that many ‘programs‘ are really just sloppy presentation devices for a specialized form of content. For example, I have a recipe app on the mac. I was wondering if they had an iPad version. Of course, they were still working on it, but then I realized, wait, I have already gotten the ingredients, etc., in the app, I can just put this on the iPad as a PDF and work off of that. In a lot of ways, Agile tools fall into this category. They give you a dizzying array of screens to go through, but when push comes to shove, you end up with a stack of cards that have a description then a list of tasks.
- Finally, and this is one of the biggest points for me (I have blogged about this before): I have reached the point where I am very critical of whether software really reduces or becomes the problem.
The dream of most tools is that you invest a small amount of time in the tool and it pays you back over and over again. There are some problems with this from the word go, but it also doesn‘t account for the fact that most groups using tools tend toward mess-making, and as the mess increases, the cost of getting value goes up.
But there is another factor here: as Lean points out, the value extraction process is itself a machine. Furthermore, it‘s one whose usefulness is time-bound. The value prop is a sliding window in a constant fight with entropy. Finally, most tools do little to nothing to address this. As a matter of fact, they just end up making things worse. Our backlog has hundreds of stories in it. Our releases would end up with hundreds of items. The amount of time consumed shuttling those things about, checking in on them, adjusting their feeding tubes, etc., becomes completely insane (fond of that word).
That said, Kanban I think, as it applies to software development, is in its infancy. The old school vendors have all run out and Kanban‘ed up, but mostly these tools are so rudimentary as to provide, again, little more than a quick presentation of content. I believe that when we are done with Kanban in software dev, it will look nothing like what‘s there today. It‘s exciting.
We were up to renew Rally end of this month. Have opted out. Looked at a lot of other tools, again, this month. Sad how little life there seems to be out there. Mingle has gone into the stage of ‘we‘re what you want us to be!‘ (just like Rational/RUP when the conflagration there reached late stage). Very little creativity out there.