Chapter 23. Including Managers and Customers

Your next goal is to get regular, direct customer involvement. This meets the XP values of honesty and communication. If you can include the customer from the start, great! If not, you can still improve your development process. The real gains will come when you do add a customer to your team (see Business Practice 1: Add a Customer to the Team in Part II).

There’s no substitute for an actual customer, although some teams use a customer proxy out of necessity. Your manager might represent a customer, or you might find a customer representative who can sit with your project regularly. Without a real customer, it can be difficult to juggle developer and business concerns. However you proceed, the customer must keep business interests in mind and must have the final authority on business matters.

Adding a customer helps everyone adjust to the idea of divided roles and responsibilities (see Part V). The earlier you can do this, the better. Blurring business and technical responsibilities, especially story scheduling, can undermine the customer’s investment. It’s better to be explicit about who makes which decisions.

With a customer in place, the planning game is more effective. Internally, the team can write its own stories and plan its own iterations within a larger milestone schedule, but the point of XP is to adjust to the customer’s needs as quickly and flexibly as possible. These needs are communicated through the planning game.

With a ...

Get Extreme Programming Pocket Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.