¿Cuál es el reto?
La dificultad reside en que este código debe resolver una funcionalidad y también debe ser escrito para que sea fácilmente cambiable.
Lo que piensa la autora
No se trata de anticipar lo que cambiará en un software, se trata de aceptar que algo cambiará. Se trata de preservar las opción abiertas para acomodar esos posibles cambios. Por tanto, reducir el coste de cambio.