Context
BigDesignUpFront is generally considered an anti-pattern. Many advocate CodeUnitTestFirst, with the creation of the SystemMetaphor at some point. It is unclear at what point the SystemMetaphor is determined. Some claim the SystemMetaphor should be determined before any coding begins, others advocate letting the SystemMetaphor emerge from the code naturally. BigDesignUpFront is considered an anti-pattern as it does not handle changing features that may break the design, and violates YouAintGonnaNeedIt.
Therefore
When the UserStories are gathered, try to narrow the problem domain. BigDesignUpFront tries to add information that may be unneeded or wrong. BigReductionUpFront tries to remove extraneous information to achieve the minimal design that could work. It is DoTheSimplestThingThatCouldPossiblyWork for design.
Contributors: LayneThomas, MichaelIvey