I heard a riddle the other day that seemed so appropriate to use as a story writing analogy that I had to share.
A man walks in to a bar and asks the barman for a glass of water,
The barman reaches down pulls out a shotgun and blasts a hole in the wall just to the left of the customer’s head,
The customer, says thank you, leaves a tip on the bar and walks out.
Why did he leave a tip?
The answer is that he had the hiccups. This makes for an amusing riddle but at the heart of this riddle is the very essence of story writing.
The customer has a need, in this case it is to be rid of hiccups, but rather than expressing his need, he phrases his requirement in the form of one possible solution. There is nothing really wrong in what he has proposed but by presenting a solution rather than a need he has limited the potential solutions and limited the scope of the solution provider – the barman. The customer may simply have been thirsty and just also happened to have hiccups, in which case the solution provided did not meet his immediate needs and may well have caused other problems – for example if he had a sensitive disposition.
The barman on the other hand is either a very good or a very bad solution provider, he has ignored the customer’s request, or possibly delved deeper, he has used other means to extract the true needs and requirements and provided what he believes to be a better solution, and judging by the tip, he got it right.
The lesson from this though is that the best user stories express needs rather than solutions, and the best solution providers explore various options, they ask questions and make assessments based on other factors and only propose solutions after they have understood the underlying need being addressed. Sometimes a solution may create conversation but often a suggested solution limits creativity.
And for me one of the great things about Agile is that very often a customer may not know what solution they want until it is proposed to them.
A user story need not be specific, nor detailed, it is best described as the basis for a conversation. The need should be explored before a solution is provided to reduce the desire to shape a need to fit a solution.
If and when a story is presented to you in the form of a solution, then explore deeper, try to get to the heart of what they are trying to achieve, it may be that their proposed solution is the best one, but without understanding the need you can never be sure.