Honestly I often struggle when asked to define lean and agile – perhaps because it’s become how I think that I think, probably with some deviation from text book polished definitions.
Here’s how I see lean and agile in the context of product development – and similar disciplines.
The one I feel most clear about is lean.
Lean: optimizing the flow of value
To become lean, you must know what value is, what flow is and how to manage both to optimize the flow of value. Optimize is ‘all-embracing’ in the sense of ‘always better, never perfect’ and that no dimensions are excluded. The flow must be ‘steady’ over time. Value is measured as ‘cost of delay’ – as defined by Don Reinertsen.
Now, what about agile: … well, agile, means agile … flexible and fast feedback, enabling fast learning and acting on learnings – while constantly delivering customer value. More and more, I think of agile as ‘optimizing for fast learning’. Importantly it includes the option to act on learnings.
Agile – first shot: Optimizing for frequent adjustments based on fast learning cycles, which include actual delivery of customer value.
Probably the most important words are ‘frequent’, ‘learning’ and ‘delivery [of value]’. To be agile, you must have a good understanding of what the next thing to be learned is [risk, uncertainty, need for validated learning – it all] – and how you can set up a context where that learning is possible or can be triggered. The tricky part is to find out what must be learned. The short version – perhaps too short – of agile would then be:
Agile: optimizing for most important learnings
The power is in the combination of lean and agile – keeping a steady, ever improving flow of value, while relentlessly looking for the next important thing to be learned. That’s what lean and agile is to me.