You are here

Is "Planning Agile" an oxymoron?

Planigle derives from Planning Agile. While I was at the agile conference 2008 last week, I was asked whether that was an oxymoron. In other words, if you're planning, you're not being agile, right? Wrong.

In waterfall, we tried to plan everything at the beginning of the project. We'd come up with a detailed project plan and we'd adjust it as the project proceeded (trying to make adjustments without pushing out the dates). This resulted in a lot of waste. Scope changed. The teams understanding of the level of difficulty changed. Not only did we do a lot of work on things that never came to fruition (waste), but it gave us the false impression that we really had a good understanding of the problem and the effort involved in solving it.

Agile means understanding that you don't know everything. You still look ahead, but not at the same level of detail. The further ahead you look, the less detail (and the less commitment). I like the five levels of planning approach that I first heard mentioned by Rally. See this article to hear it straight from the horse's mouth.

At the highest level is strategy (Rally calls this vision). What are you trying to accomplish? Why is that a valuable thing for the business? How is it going to benefit you? Without this level, there's a really good chance that your good work won't amount to business advantage. Strategies are a starting point. They need to adjust to what you learn by interacting with the market.

Next down is a road map. This is a high level understanding of the increments (themes) that you're going to take on in the next few releases to accomplish those strategies. These themes are very high level (giving you plenty of room to react to what you learn along the way). It gives your customers a feel for what you're about and where you're going.

Next down is the release plan. This is all about understanding what you're going to do towards those themes in the next release. It is setting a common understanding amongst the teams on what the release will likely look like. It is not a commitment, rather a projection. It helps to establish a common baseline throughout the team.

Next down is the iteration plan. This is the first level where you actually commit (at the team level). You plan out what you're going to accomplish in the next iteration (a matter of weeks). You get a clear understanding on what done is (acceptance criteria).

At the lowest level is the daily stand up. This is the level at which individuals commit to what they're going to get done in the next day.

Good agile teams plan. They just don't plan more than they need to (or less). They wait until the last responsible moment to make the commitment / decision.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer