Llegas a un acuerdo para hacer una aplicación muy complicada con tu cliente
1. Eliges un framework, comienzas el desarrollo
2. Tienes algo funcionando decentemente, te piden cambios
3. Caen los primeros clientes, te piden cambios (para ayer en este caso)
4. La suma de cambios hace que dejes el framework para un desarrollo mas rápido (en vez de 5 clases para cada acción, solo una ajustada a las necesidades)
5. Todo vuelve a funcionar decentemente
6. Cae el auditor, mira la aplicación y determina "se debería seguir un framework"
7. Vuelves al paso 1 (hard refactoring) ....
Jorge