Extreme Programming Perspectives
| Lisa Crispin Copyright © 2003, Lisa Crispin. All rights reserved. The morning I sat down to start writing this chapter, my contractor called (we're in the middle of building an addition to our house). He told me the painter would apply one coat of paint to the primed siding. If I wanted a second coat of paint, it would cost $275 extra. Higher quality often costs extra. It struck me how often we make decisions and compromises about quality in our daily lives. Shall I buy a Yugo or a Volvo? Eat at McDonald's or go home and cook? It all depends on what I need most money, safety, time, nutrition. In Extreme Programming Explained, Kent Beck describes the four variables of software development: cost, time, quality, and scope [Beck2000]. As he says, "Quality is a strange variable." If you try to save time or money, or increase scope, by sacrificing quality, you will pay a price in human, business, and technical costs. XP teams have the right to do their best work. On the other hand, customers have the right to specify and pay for only the quality they need. How does one reconcile two potentially conflicting points of view? Is quality negotiable? If so, how do we go about negotiating it? This chapter explores these questions.
|