I was trying to come up with something to blog about and was drawing a blank. It was the end of the day and I had been doing a lot of writing for a project I'm working on, so I decided to head out for a run and hope for inspiration, and it worked.
As I was out there, it occurred to me how my planning for running is similar to the 5 levels of planning for Scrum.
Starting at the lowest level, at the start of the day I look at my schedule, family activities, the weather, and my goals for the week to decide what to do for a workout that day. This is like the daily standup meeting; what happened yesterday (did I have a hard workout I need to recover from), what's planned for today (long run, biking etc), and what obstacles are there (busy schedule, bad weather).
Moving up to the next level, my weekly planning is like the iteration or scrum planning. I set some goals for the week such as the types of workouts I want to do that week, rest days, and total amount of time I want to work out (I go by time rather than number of miles). The iteration planning is looking at the features for that iteration and planning some detail to them, while still leaving some flexibility to their execution.
At the third level is the release planning; how many iterations are going to be included in the release, dates, themes, and feature sets. I break up my year into phases, starting with prep phase, going through a base phase, build phase, and then the race phase. Each phase has a theme and dates to go with it. For example, the theme of the base phase is endurance.
The next level up is the product roadmap; what is the overall theme, the big picture for the year. This year for example, my overall focus is on running a fast (at least by my definition) marathon. All the more detailed planning works around that.
Finally we get to the vision. My vision is to continue to be a competitive athlete; in running, triathlons etc. The product vision is how the product will look in the future.
So there it is. If this planning model can be applied to my running, it can probably be applied to a lot of projects, even if they aren't following Scrum.