Story MappingPosted by BrainConcert
Story mapping represents a more recent agile practice, one intended to provide a more structural approach to release planning. It consists in ordering user stories along two independent dimensions. The "map" arranges user activities along the horizontal axis in rough order of priority (or "the order in which you would describe activities to explain the behaviour of the system"). Down the vertical axis, it represents increasing sophistication of the implementation.
At the top of the map are the big stories, or epics; things to big to implement in one iteration or sprint. The epics break down into smaller, more manageable user stories. It simply arranges the small things under the big things in a bit of a grid form. Having in mind the time moving from left to right, if a person using the system typically does one thing after another, then you will put the early thing on the left, and the later thing on the right.
Given a story map so arranged, the first horizontal row represents a first usable version of the product (working skeleton). Working through successive rows fleshes out the product with additional functionality. The picture below depicts such a map.
One major benefit from this practice is that it helps avoiding a failure of incremental delivery, where a product could be released composed of features that in principle are of high business value but are unusable because they are functionality dependent on features which are of lower value and were therefore deferred to future releases.
All the top things in the map forms the backbone of the system. Everything else completes the skeleton, with the stories placed high if they are absolutely necessary or lower if they are less necessary. When this is done all the stories placed high on the story map describe the smallest possible system you could build that would give you end to end functionality. This is what Alistair Cockburn refers to as the walking skeleto".