Now, I consider myself somewhat of an agile practitioner. So I was rather despondent when somebody (from outside of the “project world”) recently asked me “What is Agile” and I found myself unable to give a satisfactory explanation! Sure, I could recite (most of) the 12 agile principles, and evangelise about self-organising teams, but I could see in the poor chap’s eyes (and further halting questions) that I was making no real sense. This was rather disturbing. But it got me thinking. Perhaps I could apply an approach that the late (and very great) rock star of physics, Richard Feynman, used to analyse new situations: he would merely come up with specific examples, as the following excerpt from “Surely You’re Joking Mr Feynman” shows.
For instance, the mathematicians would come in with a terrific theorem, and they’re all excited. As they’re telling me the conditions of the theorem, I construct something which fits all the conditions. You know, you have… two balls. Then the balls turn colors, grow hairs, or whatever, in my head as they put more conditions on. Finally they state the theorem, which is some dumb thing about the ball which isn’t true for my hairy green ball thing, so I say, “False!”
But how to do the same thing with Agile? Well, I guess that the only way to health-check an Agile approach is to look at the behaviours that it spawns. For example:
- is communication face-to-face / instant messenger or via email?
- are tasks created / assigned by the team or by a team leader?
- are important outstanding decisions included on the Backlog or in a consolidated Decisions Log?
- does any document (other than the final product’s user/administration guide) exceed 10 pages
- do daily stand-ups, retrospectives, sprint planning sessions account for at least half of all scheduled meetings?
- are decisions made at the last responsible moment, or more than a fortnight ahead of time?
- can team members be honest with each other or do they use “weasel words”, e.g. “I can see how your approach may work, although I still hold reservations” rather than “I think your approach is wrong and here’s why; how do we go about fixing it?”
Now, I realise that I haven’t really answered the question “what is Agile?” yet, so both in an attempt to appear authoritative and also to get you thinking about a possible answer here are a few more pithy quotes that I think go some way towards explaining the rather profound idea that is Agile:
One of the central tenets in Agile is that it’s OK to ask for help. Now, I think that I’m usually quite good at making my point succinctly (even if I’m wrong) but on this occasion I’m going to need your help. Please do let me know in the comments section below (email required -but not shown- merely for the spam filter to work!) if you can answer the question: “What is Agile?”
Here’s my parting shot; see if you can do better!
Engagement + Autonomy + Challenge + Feedback = High Performance Agility”
(John Turner… 07:47 to London Bridge)