DynamicDesign

Last edit October 3, 2014
Dynamic Design is a term coined in MartinFowler's "Keeping Software Soft" article in the December 1998 issue of the DistributedComputing magazine.

It can be achieved with a mixture of ExtremeProgramming practices (...for example):
  • Short Code-Compile-Debug cycle (...typical of Smalltalk development environments).
  • RefactorMercilessly.

Martin mentions that you start with a simple overall design (instead of BigDesignUpFront, or nothing at all), and RefactorMercilessly as the system emerges.