I’ve been participating in demo meetings with customers and product owners for years now, but we seldom talked about interesting things or rarely made significant decisions during these meetings. There can be several explanations to that, but I’m pretty convinced that we were doing these meetings wrong. The chart below depicts the categories help you understand why I think this way. Here are the content of the user stories brought to the meetings:
The figure represents quite a typical progress, nothing is wrong about it at first sight. Let’s add to the picture what has been discussed after each sprint during the mentioned demo meeting. For example, during the demo meeting of sprint 3, we mostly talked about user interface (UI) issues and only a little about functionality:
In most of the cases the team presents a subset of user stories during the meeting, and the customer just sits there - because it is a presentation after all - and has a couple of comments on the user interface of the product. Sometimes, they talk about real functionality, but that is not enough. Everything is just fine until the product is released or delivered for system testing:
This is the point when the customer really “enters” into the “functionality” section and even into the “non-functional requirements” section and starts using the product. What happens now is a disaster, because
-
the delivered software works differently than it is supposed to work
-
nobody really remembers how to use the product
-
it doesn’t meet the performance criteria
I think everybody has been in a similar situation who is doing Scrum.
After spending weeks fixing the points listed above while simultaneously working on something else - because my team moved forward and continued to work on a new project - I still cannot blame the customer. She did what the Scrum books wanted her to do: participating in the demo meetings and give feedback on the product. She wanted a product at the delivery date, and checking some internal state was a waste of her time, but she did it anyway.
Honestly, I wasn’t able to find a way to solve the problem completely, but I came up with a solution to have less problems in the future. The idea is to bring the tryout closer and earlier while the team is still involved and can do something. There is only one event where the team and customer is there at the same time and this is the demo meeting, of course. The idea is to make the customer try out the product at the demo meeting. Don’t let a team member or Scrum Master show the customer how the product is used. Let the customer try it out.
When a customer tries out a product she will no longer think about how it should look like, she’ll be busy with the functionality, and can even comment on the speed (performance) for example. Last time, one of our customers mentioned that she feels that our application was slower than that of the competition. This feedback is very valuable, indeed.
When the customer gets a feel of the product, she can better decide whether her money is being spent well. When a team member presents the product, then he mentions only those parts which he knows well. However, the customer will click everywhere and interesting things can come up, believe me.
The whole lean startup movement is based on the customer’s interaction with the software, which is very important and valuable. With this approach, you can see how the customer uses the product and learn from it. It’s free and it’s priceless. For example, there are several cases when the customer has no idea in which direction the project should be going at a certain point. She knows what she wants at the end, but there are several ways to get there. After clicking through the product, she will definitely know which functionality should come next, because she will miss it at the demo. Plus the testers can lean from her actions which functionalities can use more testing.
Finally, when she has tried it out once, she’ll certainly do it the next time and even during the sprints. She’ll send valuable feedback without asking. I cannot imagine better.
I explained the why, now let’s talk a bit about the how. It is not easy to make the customer sit in front of a laptop during a demo and start using the product. If you have a good relationship with her, at first, simply pass over the laptop and ask her to try out the easiest feature. If the customer doesn’t have any intention to touch the keyboard, ask her to bring somebody from her team and let the other person do the dirty work. The last piece of advice: never ever do it without letting her know about the tryout in advance. People hate unpleasant and unexpected surprises - do it anyway and you can be sure that there will be no more cooperation on her part.
comments powered by Disqus