I have been looking at XP for a while and have talked to a lot of people (including Ron Jeffries and Kent Beck) about it. And I think that a lot of us are missing the point of why XP works. Quite simply, I think that XP works because it is validation-centric rather than product-centric. "Huh?" you say.
First, what do I mean by validation and production? Well, production is the act of actually constructing some product, and validation is the act of assuring that this product actually does what it is supposed to do.
Typically, validation means that somebody other than the producer analyzes the product and assures that it satisfies its purpose. Now, on with the discussion.
When you are developing any software system, two questions must be ...