I had the opportunity to go see Alistair Cockburn at a special Meetup of Pittsburgh Agile in September.
Alistair Cockburn (pronounced "Coburn", thank you) is a major luminary in Agile Development, and one of the 17 original signers of the Agile Manifesto. He's the author of seven books, including Writing Effective Use Cases and Agile Software Development. This event was half technical discussion, and half performance art, since the theme was to be entirely Q&A, but instead of regular answers, he tried (and mostly succeeded) to answer each question with a story. We met in a large open room with Alistair in the middle, where he sipped a beer and spun around to answer questions from all directions.
In addition to limiting himself to the story format, he also avoided questions that he felt were outside his expertise (see the water vs ice metaphor, below).
Here are some of my key take-aways from his talk.
- His elevator pitch about "why Agile?" (from an actual elevator ride with an executive from a company he was consulting with): "1. Early delivery of business value, and 2. Reduce bureaucracy"
- He has a metaphor of a phase transition of water to ice, when moving from development to corporate concerns. A project, no matter how many people are involved, is a "water" discussion. Culture and politics is an "ice" discussion. If you try to treat ice like water, you get hurt.
What has he seen go wrong, when people try to implement Agile Development?
- One company thought that that "Agile means that we can save floor space". They had made one big open room, and "everybody immediately wore headphones all the time", so finally they divided it up a bit just to get people to talk.
- Another company had three teams each working completely differently, and each doing what they thought was "agile" since they each had what they called user stories, and an iteration length, and a velocity.
- At another client, the team had 5 week iterations, which meant that nobody could ever remember when the iteration was supposed to be done. He told them they needed to do whatever they had to, to get it down to 4 weeks, just so people could match up what they were doing with the calendar.
- He said he could count success stories of companies converting from waterfall to agile on one hand. He's come to believe you have to start with a small team of agile people, and hire others to grow it.
- Sometimes he sees what he called "Lost in the woods" development – they've got the process figured out, but they don't know where they're going.
On the Agile Manifesto, then and now
- When they were trying to come up with a word to describe what they were talking about, back in the "manifesto" meeting, the other word besides Agile that they were considering was "adaptive". He thinks that really you need both.
- In his view, the values of "individuals and interactions over processes and tools" means saying "I don't know" when appropriate.
- When asked which of the principles he'd change, in hindsight, he said the ones that gave him heartburn were "emergent architecture" and "welcome changing requirements late in the project". He said he doesn't "welcome" changing requirements, and he thinks that if you don't get the architecture right early on, you're often out of luck.
When you boil Agile down to its essentials, you end up with Scrum – and in particular, it has 3 rules and 2 guidelines
- Rule: Deliver every sprint (deliver, not demo)
- Rule: You hire good people, and then you let them decide everything else about how they do things (that's why there aren't more rules – they choose)
- Rule: Inspect and adapt every sprint
- Guideline: It's a good idea to have someone whose job is to remove obstacles (e.g. a "scrum master", although he resents the implication that this person is more important somehow)
- Guideline: All business decisions should be communicated through a single person
Choice words about CSM (certified scrum master) certification
- CSM is the reason, in his view, why Scrum beat out all the other agile methodologies
- He tries to do CSM training over 3 days, rather than 2, even though "everyone hates that" (e.g. business people hate it because then he can't do 2 classes per week). People are "running around yelling "Pigs and Chickens!!" for 2 days and don't have time to "get it".
- "All great consultants have a 2x2 matrix". He mentioned Jeff Patton in particular. (www.agileproductdesign.com/)
- The first things he asks when he goes to a company are: "Where do people sit?" and "How often do you deliver?"
- If you have to do distributed work, he says it's really important to try to establish "presence and awareness" (like being there).