Roadmapping

Putting the best first

Agile projects start with a roadmapping and prototyping phase. In the roadmapping phase, you write down everything that you want to deliver. This is sometimes called brainstorming. You then sort those ideas in priority order. Finally, you take the top deliverables and form them into a minimum useful release.

Roadmapping delivers three things:

  1. A vision and description of the completed system you want to deliver. This will explain what you are trying to accomplish, and serves as an inspiration during your incremental development.
  2. A roadmap that shows the order you intend to implement the ideas.
  3. A minimum useful release that you can show to your customers. This consists of the first deliverables on the top of the roadmap. This is the most important and essential output from the roadmapping process.

Roadmapping

The roadmapping process:

  1. Brainstorm. Collect all requests and ideas. In brainstorming, you don't filter very much. You take all of the ideas, and later you sort through them and throw out the weaklings. It's helpful to try to organize them as stories - capabilities that users actually want, described in terms of a role, a goal, and an action. Stories will come from roles - people that want them, or target users. Often your idea contributors come from these distinct roles.
  2. Optional: Add information by categorizing the ideas, voting on the most important, and estimating the effort required.
  3. Incrementalize. For each idea that you want to deliver, break it into a simple first version, with a series of improvements.
  4. Sort by priority. Your next release should come from the items on the top of the list.