Stop Over-Engineering

Posted April 2, 2002 by Joshua Kerievsky

Stop Over-Engineering (.pdf)

Patterns are a cornerstone of object-oriented design, while test-first programming and merciless refactoring are cornerstones of evolutionary design. To stop over- or under-engineering, balance these practices and evolve only what you need.