Here's how you solve a hard math problem:
*I believe this is explained in George Polya's HowToSolveIt.--ApoorvaMuralidhara*
This applies directly to how ExtremeProgramming generates design:

CategoryMath CategoryProblemSolvingStrategy

- Solve for an easy special case. For geometry, start with a 2 dimension space.
- Solve for a harder special case, such as a 3 dimension space.
- Refactor the solutions together to apply to the general case, such as an n-dimensional space.

- DoSimpleThings to satisfy one UserStory.
- DoSimpleThings to satisfy the next UserStory.
- RefactorMercilessly to merge the two solutions into a reuse-based design.

- generalize the problem
- trivially solve the generalized version
- bring the solution back to the special case

CategoryMath CategoryProblemSolvingStrategy

View edit of December 10, 2005 or FindPage with title or text search