Diría que no esperes todo eso en un libro y que vayas por partes. Enfócate en temas, primero aprende a resolver problemas pequeños y luego es un tema de escala (un sistema complejo son muchos sistemas pequeños trabajando juntos)
"Un sistema complejo que funciona resulta invariablemente de la evolución de un sistema simple que funcionaba. Un sistema complejo diseñado desde cero nunca funciona y no puede ser arreglado para que funcione. Tienes que comenzar de nuevo con un sistema simple que funcione."
– John Gall (via: Signal vs. Noise)
En mi opinión el camino está por entender
UML (principalmente diagramas de Casos de Uso, Clases y Secuencia) como medio para planificar la construcción de un edificio ("los planos") y luego construir los objetos.
Posteriormente tienes el
estándar de codificación Zend y
buenos documentos sobre calidad de software, puedes ver temas como
Principios de Diseño OO,
Patrones de Diseño y
Refactoring.
Finalmente, si quieres ver algo de gestión, puedes empezar a ver algo de
Metodologías Ágiles, como ser
XP y finalmente
Scrum.
Pero todo junto lo dudo
PD: bueno, cuando termine mi libro, pero todavía falta un poco
![apachar ojo](http://static.forosdelweb.com/fdwtheme/images/smilies/wink.png)
(tal vez esté para las fiestas
![apachar ojo](http://static.forosdelweb.com/fdwtheme/images/smilies/wink.png)
)