Extreme Programming home

The Customer is Always Available

 One of the few requirements of extreme programming (XP) is to have the customer available. Not only to help the development team, but to be a part of it as well. All phases of an XP project require communication with the customer, preferably face to face, on site. It's best to simply assign one or more customers to the development team. Beware though, this seems like a long time to keep the customer hanging and the customer's department is liable to try passing off a trainee as an expert. You need the expert.
 User Stories are written by the customer, with developers helping, to allow time estimates, and assign priority. The customers help make sure most of the system's desired functionality is covered by stories.
Another Satisfied Customer During the release planning meeting the customer will need to negotiate a selection of user
stories to be included in each scheduled release. The timing of the release may need to be negotiated as well. The customers must make the decisions that affect their business goals. A release planning meeting is used to define small incremental releases to allow functionality to be released to the customer early. This allows the customers to try the system earlier and give the developers feedback sooner.
 Because details are left off the user stories the developers will need to talk with customers to get enough detail to complete a programming task. Projects of any significant size will require a full time commitment from the customer.
 The customer will also be needed to help with functional testing. The test data will need to be created and target results computed or verified. Functional tests verify that the system is ready to be released into production. It can happen that the system will not pass all functional tests just prior to release. The customer will be needed to review the test score and allow the system to continue into production or stop it.
A Customer This may seem like a lot of the customer's time at first but we should remember that the customer's time is spared initially by not requiring a detailed requirements specification and saved later by not delivering an uncooperative system. Some problems can occur when multiple customers are made available part time. Experts in any field have a tendency to argue. This is natural. Solve this problem by requiring all the customers to be available for occasional group meetings to hash out differences of opinion. Coding Standards

ExtremeProgramming.org home | XP Rules | Code Standards | About the Author

Copyright 1999 Don Wells all rights reserved.