Key points (a.k.a. tl;dr):
- Nearly all organizations have an existing service-delivery process and culture
- With varying degrees of “calcified culture,” organizations find it difficult to overlay agile practices
- Agile principally has only one practice that facilitates continuous improvement, and even that, absent an improvement culture, has limited practical effect and is occasionally even counterproductive
- When introduced in an evolutionary way, kanban is the most effective way to catalyze and sustain continuous improvement
Of the dozens of organizations with whom I have consulted, I can think of only one — a startup that truly had no existing service-delivery process in place — that didn’t already have some more or less entrenched way of working. Some have been hipper, younger, more relaxed, and some highly formal, structured and uptight; but they have uniformly resisted change and inhabited a “calcified” culture to some extent. And that’s understandable, since all have been comprised of human beings.
As a result, these organizations have found it difficult — sometimes even impossible — to adopt and benefit from agile practices as traditionally understood, whether XP, scrum, etc. Without a fundamental philosophical understanding of agile at several levels in the organization, these groups try to overlay agile practices onto their existing delivery process and culture, only to reject them like a bad organ transplant. Agilists rightly claim that agile practices reinforce each other, and that the practice of many of them is greater than the sum of them as individual practices. The problem is that introducing more than a couple of them at once is essentially a path to org-change hell. So let me state this: Agile works great for organizations that have essentially a blank slate on which to design their way of working, or for small teams operating in a culture of true empowerment.
Agile does attempt to build in an iterative, incremental approach to ongoing improvement in the practice of retrospectives. Some agilists — including yours truly — even elevate this practice as the most important. But here again, without a philosophical commitment to agility, organizations too often simply go through the motions of retrospecting, or worse, use them as manager bully pulpits dressed up as team-empowerment sessions. We all know of many other retrospective anti-patterns.
So teams and organizations struggle to make agile work. However, kanban approaches change in a fundamentally different way. Though many teams have arrived at kanban as a kind of “advanced” or “mature” agile, the real power of the kanban method is in its ability to foster change without the pain of resistance — prior to adopting agile practices. Kanban’s foundational principles show why:
- Start with what you do now
- Agree to pursue incremental, evolutionary change
- Respect the current process, roles, responsibilities and titles
This can be difficult for those of us who love and appreciate the manifold agile practices and underlying principles. You need a product owner! Why aren’t you pairing? Uh, you don’t have tests for this? How is estimating in hours working out for you? To be sure, a team that agrees to pursue change may ultimately adopt agile practices — indeed, one reason people love and benefit from things like TDD, pairing and product ownership is because they are proven practices.
Starting with the current state and respecting current processes and roles is, for most people, much more appealing and less disconcerting than agile, which often comes off as simply The Latest Organizational Change Initiative. The danger, of course, is that teams may do that without a powerful agreement to pursue incremental, evolutionary change. But by using the give core practices — including visualizing the workflow, limiting WIP and improving based on transparent data — teams are able to improve ad infinitum. In my experience, kanban — rather than the overlay of agile onto an organization, like a suit tailored for a different man — is the better fit for most. More importantly, kanban is the better catalyst for continuous improvement because it necessarily means that the people themselves are identifying and owning the change.