The pulling together of the team to discuss/discover large-scale design changes. The purpose is for the team to validate and understand the system-wide effect of the change. This is typically done through role playing object scenarios with CrcCards and ensuring that existing UserStories taken together are still supported.
In XP, sometimes when the team is working to develop and understand the UserStories, the stories may have a significant impact on the overall design of the application. Or, maybe when one pair is working to integrate a new user story into the system, their view of the system now changes as the requirements crystallize. They discover a simpler solution which requires a fundamental change in the existing design. Instead of just that one pair working entirely on their own to change the design, as part of their XP process, they should communicate the ideas to the rest of the pairs in ExtremeProgrammingDesignReviews. The design change(s) could then be implemented in a RefactoringIteration.
ExtremeProgrammingDesignReviews differ from ExtremeProgrammingCodeReviews in that you are looking at relationships between objects and how they interact, rather than specific code implementation. -- JeanineDeGuzman