A few months ago, I finally started appreciating the Customer role in XP: it made a real difference to us when we stopped doing our iteration planning ourselves (with advice from others, to be sure), and started having somebody else pick the stories for each release. (We still plan the work in our weekly iterations ourselves, within the framework given by the monthly release plan; this doesn’t seem to me to be a particular problem right now, thought it’s something to think about in the future.)

But that’s only half the work that the Customer is supposed to do: the other half of the work is that the Customer is supposed to write the acceptance tests. (With the help of a Tester, to be sure.)

We’re not doing that; I’m starting to realize how it’s hurting us. A week or two ago, for example, I started discussing the user interface for a feature we were implementing with somebody who is more customer-facing; it turned out that his ideas for how it would best be designed were considerably different from our ideas for that. I’m really glad we had that conversation; it would have been nice if similar conversations had happened at other times recently. As it is, I’m worried that there are other features that I consider “done” that will magically flip to being un-done when somebody else looks at them and discovers that they’re not implemented the way they should be. Or, more frighteningly, the features make it out to the wild as-is, and real customers don’t like them because of things that we could have fixed months ago, if only we’d communicated better.

And it’s not just that I privately consider them done: I’m being asked to sign off on features as being done without feeling that I really know how other people are interpreting my sign-off. Which is an uneasy situation to be in: part of my job is to take responsibility for certain things, and I’d like to know exactly what other people see me as taking responsibility for.

Of course, it’s not like I’m without options here: I should start pushing back more on these issues. It will be a bit delicate figuring out the most productive way to do so – our current resources aren’t going to magically change, and there’s nobody who’s a perfect fit for the Customer role in our current setup. Hopefully we can start making incremental improvements. And it helps a lot that we don’t have much of a culture of blame: it’s a lot easier to be courageus in situations like that.

Post Revisions:

There are no revisions for this post.