I've been working with some clients transitioning to agile. The senior managers
want to know when the project will be done.
I can understand why they want to know. But before you start a project, you can't know
with any certainty! What you can do is use rolling wave planning to know more as you proceed.
The way to use rolling wave planning for agile
- Lay out the major features you want in a product roadmap. You can organize the product roadmap by week, month, or quarter. I recommend no longer duration than one quarter.
- Now, create the stories that go with the features in the order in which you want them done.
- Work with the team to further refine the stories as they plan the first iteration.
- The team completes the first iteration.
- Now, assuming the team has worked together before, and that the product owner has refined the user stories as much as possible in the previous iteration, the team takes the time to do a gross estimation of all the remaining features in the roadmap. If the team has not worked together before or is new to agile, they need a few more iterations to practice estimating before they can provide a gross estimate that's at all useful.
- Lay out, on a timeline, approximately when the team thinks they can finish the features, based on the gross estimate.
- Now, lay out the major milestones (when you will have finished features) on a timeline. Every iteration, you note what you actually completed. When it makes sense, say every 4 weeks, re-estimate the entire backlog, if you need to provide a more accurate estimate. Since you'll be within +/- a few iterations at the beginning, I don't normally suggest you re-estimate all that often in the beginning. But you could.
Now, you have a rolling wave of what you think you can accomplish when. And, you are closing in on a date for your managers.