Many people believe that using agile means not doing planning. baloney. Why the heck do you think Mark Cohn wrote “Agile PLANNING and estimating.” The difference is that on an agile project planning happens in different ways, in pragmatic ways, in progressive stages of greater and greater planning.
So how do you do it?
Planning in Agile comes in Ranges and Stages.
The first planning Range is the Road-map planning. This is the long range planning Road-map planning can go out years in advance. This is the visionary planning.
The next planning Range is Release planning. Release planning is more near-term. Release planning typically spans 3-6 sprints depending on the size and scope of the project, the stage of the project and the duration of the sprints. Typically the first release of any product will take a few more sprints to have a useful set of features. YES every sprint produces “potentially shippable code” but in that first phase the key is potentially. I like to plan a couple of releases out. But again at different levels. The current release (the one you are currently working toward) should be expanded to all Stories that will be necessary to deliver the functionality defined by the product owner for that release. The next iteration should have a few stories down but mostly be epics.
Finally there is Iteration (Sprint) planning. Iteration or Sprint planning is where the rubber meets the road. If you are familiar with agile approaches then you know that in iteration planning you define all the tasks required to deliver that sprint’s functionality. These tasks are then taken on by the team.
I will cover the stages in a subsequent post. but suffice it to say how you go about planning the above RANGES will differ by the project stages.