This weekend my wife and I took the kids to a park. Actually we took them to two, and there’s nothing all that unusual about this.
Our son has been really into bugs lately. Our daughter has been into whatever her older brother is into most of her life. At one point of this particular park trip our son had managed to get a small green Aphid like bug on his hand, It might have been some kind of treehopper or planthopper, or an aphid. I really don’t know. The kids called them “gillies.” The point, apparently, is that it was green.
See, my daughter wanted her gillie. She was getting quite upset that she didn’t have one in fact. I noticed she had a bug not unlike the one her brother did. She hadn’t noticed because it was on her arm near her elbow facing away from her. Being the helpful problem solving type that I am I tried to get her to notice it so she would calm down. When I finally did get her to turn her arm and look she started to shake her arm while screaming “get it off!” Moments after brushing it off she was proudly showing off the green one in her hand. What happened? I didn’t understand the requirement. I thought the user story was “I want a gillie!” Turns out the user story was “I want a green gillie!”
Often we spend so much time trying to deliver value we lose sight of who we are delivering value for. In an Agile environment the short cycle times are not there just to push out small bits of value as fast as we can. This should be solved by customer collaboration. When we collaborate we can verify our understanding of user stories. “User moves piece” becomes “User selects preferred move from list.”
That’s not enough though. Customer collaboration without responding to change is a failed implementation. Without adjusting based on the feedback we get we may as well not be collaborating.
Are you regularly collaborating with your customers? Are you changing based on what you discover?