Going faster with Lean principles
Software teams are often asked to go faster. There are many factors that influence the speed at which teams can discover, design and deliver solutions, and those factors aren’t always in a team’s control. But Lean principles offer teams a way to analyse and adapt their operating model – their ways of working.
What is Lean?
Lean is a method of manufacturing that emerged from Toyota’s Production System in the 1950s and 1960s. It’s a system that incorporates methods of production and leadership together.
The early Agile community used Lean principles to inspire methods for making digital products and services. These principles have had influence beyond the production environment and have been adapted for business and strategy functions too.
Books on Lean
Four books on Lean principles have influenced the way I work.
1. Lean Software Development: An Agile Toolkit by Mary and Tom Poppendieck
The earliest of the four books. It really set the standard.
2. The Lean Startup by Eric Ries
This started a big movement for applying Lean principles to your startup, including testing out new business models or growth opportunities.
3. Lean UX by Jeff Gothelf and Josh Seiden
One of my favourites. This one really brought strategic goals and user experience closer together. It also shifted teams from writing problem statements to writing hypotheses.
4. The Lean Product Playbook by Dan Olsen
This is relatively similar to The Lean Startup but is more of a playbook, showing the practice that goes with the theory. The highlight is its emphasis on MVP tests: experiments you can run to learn something without building anything.
Lean principles
All these books have some principles in their pages, all based on the original Lean principles from Toyota. They’re all pretty similar.
Combining their approaches helps us apply Lean principles to business model development, strategy, user-centred design and software delivery.
A note on principles: Principles are not rules. Principles guide your thinking and doing. Rules say what’s right and wrong.
1. Eliminate waste
Reduce anything which does not help deliver value to the user. So: partially done work; scope creep; re-learning; task-switching; waiting; hand-offs; defects; management activities. Outcomes, not outputs.
2. Amplify learning
Build, measure, learn. Create feedback loops. Build scrappy prototypes, run spikes. Write tests first. Think in iterations.
3. Decide as late as possible
Call out the assumptions or uncertainties, try out different options, and make decisions based on facts or evidence.
4. Deliver as fast as possible
Shorter cycles improve learning and communication, and helps us meet users’ needs as soon as possible. Reduce work in progress, get one thing done, and iterate.
5. Empower the team
Figure it out together. Managers provide goals, encourage progress, spot issues and remove impediments. Designers, developers and data engineers suggest how to achieve a goal and feed in to continuous improvement.
6. Build integrity in
Agility needs quality. Automated tests and proven design patterns allow you to focus on smaller parts of the system. A regular flow of insights to act on aids agility.
7. Optimise the whole
Focus on the entire value stream, not just individual tasks. Align strategy with development. Consider the entire user experience in the design process.
Three simpler principles
If those seem like too many to get started with, I want to introduce three simpler principles that can help you go faster. I came across these in a book about running, which doesn’t seem like the place you’d find inspiration about product management!
Think easy, light and smooth. It’s from a man called Micah True who lived in the Mexican desert and went running with the local Native Americans. They called him Caballo Blanco – ‘White Horse’ – because of his speed.
“You start with easy, because if that’s all you get, that’s not so bad. Then work on light. Make it effortless, like you don’t give a shit how high the hill is or how far you’ve got to go. When you’ve practised that so long that you forget you’re practicing, you work on making it smooooooth. You won’t have to worry about the last one – you get those three, and you’ll be fast.”
You can do this every cycle. Find one thing to make easier, one thing to make lighter, and one thing to make smoother. Fast will happen naturally.