Примеры подходов и хороших практик при реализации сложных архитектур?
Подскажите какие-нибудь статьи или книги, в которых на каком-либо примере по шагам была бы описана разработка сложной архитектуры. Т.е. с чего началось все, какие трудности возникли, почему были приняты те или иные решения. Очень интересно было бы почитать, как думают именно архитекторы ПО.