¿Por qué?
Las tres leyes de TDD nos permiten generar código de producción, pero este no necesariamente tiene un buen diseño, dado que nos centramos en cumplir un comportamiento. Si esto se mantiene, el código se degrada con el tiempo.
Si intentamos implementar un comportamiento y buen diseño al mismo tenemos menos probabilidades de tener éxito en estas dos vertientes. Por eso es recomendable que sean procesos separados tal y como dice Kent Beck
First make it work. Then make it right.
Es importante dejar claro que es algo que debe hacerse continuamente pero no siempre sino cuando se vean pistas claras de mejora de diseño