Joel explains why XP isn't the answer to everything:
"Many times, thinking things out in advance saved us serious development headaches later on....As I worked through the screens ... I realized that Aardvark would be just as useful, and radically simpler...Making this change in the spec took an hour or two. If we had made this change in code, it would have added weeks to the schedule. I can’t tell you how strongly I believe in Big Design Up Front, which the proponents of Extreme Programming consider anathema. I have consistently saved time and made better products by using BDUF and I’m proud to use it, no matter what the XP fanatics claim. They’re just wrong on this point and I can’t be any clearer than that."