Push vs Pull in Agile Adoptions

Agile folks who claim advanced knowledge and know-how extol the virtue of “pull systems” like Kanban. The idea here is that pushing a load of work on teams is bad. Far better for teams to pull the next chunk of work, or work item. Scrum asks teams to “pull” in a group of work items that they think they can handle. Kanban goes further, asking that teams simply pull individual work items as they have capacity to do so.

The idea with a pull system is that the receiver initiates the pull. There is no push from a sender. The team “opts in” to pull work in based on their capacity to do that work.

Pull is a great idea right? Teams know what they can handle, so they “pull” in what they can handle. A superior idea for sure!

Pushing Agile Practices on Teams

If you believe workflow “pull” is superior to workflow “push” by management, you have a problem. And that problem is that most Agile adoptions are implemented as mandates. As impositions. As push.

If you approve of this, and you are a fan of “pull” systems for workflow, you are in conflict with yourself. You are actively promoting “pull” for workflow even as you are promoting a coercive “push” of Agile practices on teams.

This makes no sense whatsoever.

Martin Fowler, an original signatory of the Agile Manifesto, said as much in 2006 in an essay entitled “The Agile Imposition“.

Here are some quotes from that essay:

“Imposing a process on a team is completely opposed to the principles of agile software, and has been since its inception.”

“Imposing an agile process from the outside strips the team of the self-determination which is at the heart of agile thinking.”

“Not just should a team choose their own process, the team should be control of how that process evolves.”

“…I’d rather have a team work in a non-agile manner they chose themselves than have my favorite agile practices imposed upon them.”

“So… I hope I’ve made clear that imposing agile methods is a very red flag.”


The answer of course is to invite the teams to give Agile a try. At issue is how to set it up so the teams can opt-in to experimenting with Agile practices.

OpenSpace Agility  is a method for engaging everyone: executives, managers, the teams. Everyone. It expects something from everyone involved. It creates engagement, which is the very fuel of a rapid and lasting Agile adoption. It works, and it is fun.

You can learn more here:

Open Space Agility Explained