Wednesday, June 9, 2010

XP 2010 Session Report -- User Story Mapping by Jeff Patton

This session was interesting to me for two reasons--I thought Jeff's presentation style was effective, interesting, and sufficiently dynamic to keep the audience engaged. He'd often ask us questions and draw up the responses on a flip chart. He clearly knew the material well and actually had his own answers--yet he was guiding us well enough that the group discovered much of what he had already added on subsequent slides in his presentation.
The content of the presentation was a good fit for me too. Jeff's system of User Story Mapping solves a lot of problems I've seen in the field--problems that I've solved in similar ways. First, he pointed out how user stories are different things to different people--for a business owner it may be a part of a business process, for a user it may represent the repetitive steps of a manual task, for a developer it may pose architectural hurdles. Each of these people would choose different key words to describe the story, as well as different levels of abstraction. So instead of seeking uniform descriptions, Jeff will ask clients to identify all the detail they can in a one day workshop. After capturing a large number of stories, he asks people to sort the stories in approximate workflow order, then to identify themes (epics). He argues that the epics are distinct dimensions of the product and can't meaningfully be prioritized against each other, but within an epic, stories need to be grouped into releases. Read more about this system at
It is thought provoking to consider the pros an cons of his method for displaying all stories and epics on the same story wall for the life of a product (or at least the next three releases). When I worked on a mature product that was releasing much more frequently, this kind of forethought was definitely not necessary. Now that I'm working on new product development, though, it's very helpful to see how new functionality fits in with the big picture. My current team uses an adhesive surface for our story wall, and shows much less information. We add stories that don't fit in any theme and stories that are in the current iteration. We add everything else to an envelope, give it a clear title, and stick that on the wall too. We can move the entire envelopes around the story wall to show which ones are active, and we can remove the envelopes from the wall to throw all the cards on a table when we need to talk about the epic in detail. I think that these discussions would always happen on the story wall in Patton's teams... but it's also possible that we pay for the convenience of carrying one envelope by having less visibility and fewer discussions about inactive epics.

No comments: