Writing User Stories

Source: http://tech.groups.yahoo.com/group/scrumdevelopment/message/55582 by Ron Jeffries
What are your opinions about standardizing on writing all scrum stories in "Gerkin" or "Cucumber" format?  I am interested to hear about best practices, and any comments folks have from their own experiences.
First, please read Card, Conversation, Confirmation. Then continue reading here:

First of all, let's be clear. Scrum specifies that there shall be a Product Backlog, containing Product Backlog Items. Stories are not an essential part of Scrum, although they are very useful. If you do choose to use them, I suggest using them well, as described in the article linked above, and as follows:

It does not matter how we write the story on the CARD. It matters that the Product Owner and Team talk about it (CONVERSATION, not PO tells and Team listens) until they have a good understanding of what is going to be done. Then they agree on CONFIRMATION, which is generally good to express in FitNesse, Gerkin, Cucumber or the like.

The CARD is used as a token for what to be done. If the story will not fit on the card, use a smaller card. Yes, smaller. It's not a document, it's not a specification. It is a token. Alistair Cockburn called it "a ticket to a conversation".

The CONVERSATION is where most of the understanding is built up between team and Product Owner. It is important that it be two-way because the PO needs the team's creative input on what to do.

The CONFIRMATION is concrete acceptance criteria (examples) of how the story will work. This is best done in some "programming" style, as you refer to above.

However, the CARD is not the story. The CONFIRMATION is not the story. A story has all three. CARD, CONVERSATION, CONFIRMATION.

You may be wondering how I know. I know because User Stories are part of XP, imported into Scrum, and I was there when they were being invented and figured out.

Ron Jeffries