Customer Capabilities

The OnsiteCustomer has several CustomerResponsibilities. What are the capabilities such a customer should have?


From From the XpMailingList:


There are three capabilities I look for in a customer.

First, I want them to actually know lots, and have access to quick and reliable feedback when they don't know. The best customers actually used the legacy system for years, and perhaps supervised and/or trained other people to use the system.

Second, I want them to have vision for where the system could go next. They need to be able to get beyond "shift-F7 here, please" to think about what the business needs.

Third, because there is no one source of information for any interesting system, they have to be able to create a piecemeal, emerging view of what the system needs to do. I was going to say "consensus", but that's not right. In any new system there will be winners and losers among the audience, and the best you can hope for is maximizing value and excitement and minimizing pain and obstruction. --KentBeck


The big question is how often can you find this IdealCustomer??


In PlanningExtremeProgramming (Chapter 4, Balancing Power), KentBeck and MartinFowler list five characteristics. Summarizing, a good customer:

In their experience, accepting responsibility is the most difficult part. (It's also the one that is not explicitly listed in the capability list given earlier.)

ExtremeProgrammingExplainedEmbraceChange (p. 142) lists the following skills:

The best customers are those who will actually use the system being developed, but who also have a certain perspective on the problem to be solved.


The other kind of ideal customer would be one who says:

Now, if he really means it and if you have the necessary domain knowledge in your team - then this situation can be quite nice, also. ;-)

Of course, this customer does not really exist. But: we have one customer who gets pretty close.


According to PlanningExtremeProgramming (p. 123), the best customer KentBeck ever saw had spent seven years using the legacy system. Then she spent three years supervising other representatives. This left her with complete knowledge of the existing system and an understanding of where the system was weak, where mistakes were likely to be made, where duplicate information was required. She was also fearless in making decisions but conscientious about verifying them after she made them.


You should look for a single person who can confidently speak for business. This person needs experience, contacts, vision, and courage [PlanningExtremeProgramming, p. 123] If you can't find a single person to act as a customer, you'll have to have a committee of customers. Make sure TheCustomerSpeaksWithOneVoice. If that doesn't work, you may have to give disagreeing customers different budgets, which is all they can spend. Both customers then need to be available to answer questions.


CategoryCustomer | See also WorkshopOnCustomerInvolvement


EditText of this page (last edited June 1, 2004) or FindPage with title or text search