Story Mapping is a collaborative technique invented and popularised by Jeff Patton. Story maps are intended to foster discussion and collaboration about how to achieve a particular outcome or business impact.
Story maps provide a great basis for discussing the needs of your users, and prioritising development to deliver the biggest impact. A typical story map has a hierarchic structure involving user activities and user stories. The story maps tell stories from the user’s perspective and represents the user’s progress through the system as a series of activities.
Story mapping workshops are best held face-to-face, traditionally using sticky notes to build up the map as a team. These sticky notes – or cards – are arranged to depict the user’s typical progresses through the process from left to right; activities on the left are typically carried out before those on the right. In order for a user to achieve a goal, the user needs to perform a series of activities (browse for books, add books to the cart, enter shipping details, complete payment etc.).
By engaging directly with stakeholders, story maps help you get quick and meaningful feedback and adopt an iterative build-measure-learn approach to product development. Directly discussing stories with stakeholders helps identify key features, allowing you to slice and prioritise your product backlog to support the desired flow of user activities at an early stage, and refine it incrementally. As they grow, story maps can become quite large.
While a physical environment encourages collaboration and discussion, there are practical limitations of physical story maps: they are tied to a particular location and not suitable for archiving electronically. Quite often, photographs of the map are taken for archiving, but this means the story map is essentially frozen in time, and cannot be edited and refined.
SpecMap allows you to capture your physical story maps electronically and integrate them directly with your product backlog in TFS/VSTS, with all the advantages this brings.
Each activity can be further broken down into smaller chunks, which are the user stories themselves. For example, browsing for books may involve searching the product catalog, viewing details and reviews of the books, and viewing other recommended books related to the current product.
Once the user stories have been discussed and defined, the next step is to prioritize development to deliver the biggest impact possible over the next development cycle. User stories that relate to the same activity are prioritized vertically, with more important stories at the top and less important stories lower down. This priority applies to all activities and should take into account factors such as dependent features (e.g. you cannot add products to the shopping cart if you cannot view products), as well as the needs of end users. Items on the same vertical level are referred to as “slices”, and typically represent one development cycle or sprint. In SpecMap, slices can be linked to iterations in TFS/VSTS, allowing you to plan development once you have prioritised the individual user stories.
For more information on Story Mapping, see Jeff Patton’s site.