12 Jan 2008

The Three C's of User Stories - Just the card is not enough

Ron Jeffries describes User Stories as having three critical aspects:
- Card, Conversation and Confirmation.

The Card is the simple index card used for planning and prioritization. The Conversation aspect is where the actual requirement is communicated. In most cases there is not one single conversation, it is an ongoing conversation, unfolding over time. The Confirmation aspect is the Customer Tests. It allows us to confirm that we have implemented the requirement properly. The tests provide the detail of the story and much of the detailed documentation of the project.

In many Agile projects teams seem to be quite happy planning with Cards. Fewer seem to handle the Customer and Developer conversation. Fewer still seem to be able to stretch to the confirmation aspect.

Why?

In large organsations it seems the Conversation aspect is less likely to happen. Perhaps this is because within many organsations, especially large organisations, there is still the feeling that Developers and Customers shouldn't really be talking to one another. They have invested in a whole range of stakeholders to ensure that this doesn't happen, including Information Modellers, Solution Architects, Business Architects, Business Analysts, and entire business transformation groups. With such a large set of stakeholders that they don't feel comfortable relying on a simple conversation to communicate requirements.

So why limit Customer Testing? I think Customer Testing is much harder than Developer Testing (especially if the Conversation is missed). It is hard to find an approach to customer testing that is consistently interesting to the customer over the duration of the project. I find customers often don't want to go in to detail and "just want things to work". It is also far harder to establish a rhythm of customer tests across an iteration.

Even though it's hard, doesn't mean it’s not essential. When we are working with User Stories, if we want to be successful we need to face up to the face that we need all 3 C's: The Card, the Conversation AND the Confirmation.