Wednesday, February 04, 2009

Why "As a" in User story template is important

It gets interesting if two different persona (different users) find a given feature of software contradictory. I was thinking about one today, where we worked with one group and same story could cause whole bunch of unintended activities for other groups.

In software development process people write stories in the similar manner that a filmmaker make a blueprint of a movie by constructing story board.

Each feature is captured as a "story", which defines the scope of the feature along with its acceptance criteria. The narrative should include a role, a feature and a benefit.

The template of user story: "As a [role] I want [feature] so that [benefit]" has a number of advantages. By specifying the phrase "As a" within the narrative, you know who to talk to about the feature and also reminds you of a role or persona. Someone who can benefit by using the system (until then the system just costs). By specifying the benefit, you cause the story writer to consider why they want a feature. If you can't actually spell out the benefit, then something is missing.

Having done the homework and describe the same story from different point of views can save time and re-work. It seems like a good habit to write the same feature from different group's perspective.

Here is a an Aesop fable (great for telling your kids at night time) showing two different persona (Fox and Crow) having different goals in a situation.

The Fox and the Crow

A fox was walking through the forest when he saw a crow sitting on a tree branch with a fine piece of cheese in her beak. The fox wanted the cheese and decided he would be clever enough to outwit the bird.

"What a noble and gracious bird I see in the tree!" proclaimed the fox, "What exquisite beauty! What fair plumage! If her voice is as lovely as her beauty, she would no doubt be the jewel of all birds."

The crow was so flattered by all this talk that she opened her beak and gave a cry to show the fox her voice.

"Caw! Caw!" she cried, as the cheese dropped to the ground for the fox to grab.

No comments: