Sunday, February 8, 2015

Agile: the meaning

Dilbert: We need 3 more programmers.
Boss: Use agile programming methods.
Dilbert: Agile programming does not mean doing more work with less people. Boss: Find me some words that do mean that and ask again

Dilbert is a creation of Scott Adams
And so, you might ask: what does agile mean?

How about this?

Agile means getting effective project results even in the swirl of complex and uncertain project requirements, primarily by applying small teams, working collaboratively, to deliver increments of business value, with priority according to business effectiveness, importance, and urgency
Ooops! I seem to have left out anything about process. Is agile a process-free zone? Of course not! No one does anything functionally without applying a bit of process, even if it's only two steps.

My observation -- and personal experience -- with myriad small teams is that they self organize to optimize their self interests amazingly fast, first trying one process -- perhaps a baseline process -- and then quickly shifting to another to find a "local" optimization. Sometimes there's an obvious leader; sometimes it's all for one; one for all.

When/where collaboration improves their lot, they'll readily collaborate. Where it's problematic is when collaboration demands are laid on top-down with no obvious improvement in the local process and no apparent connection to goals or objectives. If the top-down thing is legitimate, then the project leadership needs to get in the communications mode to show how all the dots connect! 

Read in the library at Square Peg Consulting about these books I've written
Buy them at any online book retailer!
Read my contribution to the Flashblog