Заинтересовался разработкой архитектур сложных приложений, особенно это актуально для меня ввиду того, что иногда я не знаю, с чего начать построение архитектуры. Подскажите, пожалуйста, какие-нибудь книги или статьи, где автор, на примере более менее сложного программного комплекса, объясняет с нуля как разрабатывать архитектуру для него. Желательно чтобы автор не просто говорил, что нужно использовать то или то, а подкреплял логическими доводами свои решения, чтобы можно было понять, как мыслить при разработки подобных архитектур.
Если у кого-то из вас есть интересный опыт в разработке архитектур для сложных программных комплексов, поделитесь своими подходами к этому делу!