So much of what we call agile is waterfall but with sprints.
- Ever seen a backlog with tickets mapping out the entirety of the project? Waterfall with sprints.
- Ever been asked to estimate a giant scope of work, and that becomes the timeline of the project? Waterfall with sprints.
- Ever decided if something was in scope or not, months before that thing would get built? Waterfall with sprints.
One of my favorite principles from Lean is to decide as late as possible. That’s when you have the most information, so that’s when you should make the decision. Apply this to everything: technical architecture, prioritization, requirements, everything. Wait to decide until you can’t wait any longer.
In project planning, deciding as late as possible means that you only decide to do something when it’s time to do it. That way you can be as confident as possible that it’s the most valuable thing to do next. Don’t decide what’s in scope for the whole project before the project even begins. Shut up and plan the sprint.
If you focus on the sprint, then the project works itself out. Make sure every sprint has a sprint goal so you’re always doing the most valuable thing at that moment. And limit your backlog to 1.5 to 2 sprints worth of tickets. You’ll change requirements or priority of anything beyond that before you get around to building it anyway.
In the timeless words of the Agile Manifesto:
Customer collaboration over contract negotiation.
Responding to change over following a plan.The Agile Manifesto
“But my client (or company or boss or whoever) wants to know how much it will cost!” Sure, and you can tell them a price and a timeline, but you can’t guarantee a scope of work. Fixed price, variable scope. This is for their own good. What seemed valuable when they signed the contract will change.
Help them be agile. Help them understand that responding to change brings more value than following a plan. Talk to them about how collaboration brings more value that negotiating a scope of work. Help them learn to decide as late as possible.
So don’t plan the entire project before it starts. Shut up and plan the sprint.
Don’t create tickets for things you won’t work on for months, if ever. Shut up and plan the sprint.
Don’t agree on a very specific scope of work a year before the project may launch. Shut up and plan the sprint.