Всех с наступающим!
Это тема, видимо, плохо формализуется и потому как-то книг особо хороших нет.
Если хотите разбираться в таких вопросах, то лучший способ - опыт. Участвуйте в разных проектах, смотрите как там что устроено, разбирайтесь как оно работает, какие есть плюсы и минусы. Меняйте работу раз в два три года, чтобы повидать разные проекты с разными подходами.
Смотрите на архитектуру с разных сторон. Со стороны менеджера (сколько будет стоить разработка с такой архитектурой?), со стороны пользователя (Легко ли вставить в такую архитектуру все, даже самые бредовые хотелки пользователя?), со стороны программистов (а хорошо ли будет писать под такую архитектуру?) и т.д.
Опасайтесь субъективной оценки архитектуры - многие считают плохой любую архитектуру, придуманную кем-то другим. Если человек ругает архитектуру, добейтесь конкретных ответов, почему она плохая, а не расплывчатых обвинений, вроде "не гибкая", "архаичная" и т.д.