За 20-летний опыт работы мне много раз приходилось участвовать в проектировании или обновлении архитектуры систем. Практически всегда оказывалось, что эффективнее всего будет строить новую архитектуру на базе тех компонентов, которые уже существует на рынке.
Общий подход при решении таких задач — это привести систему к более общей и типовой для рынка. Самое сложное здесь — это действительно понять, что архитектура вашей новой системы не уникальна, а повторяет то, что уже давно и эффективно хорошо работает у других. Как только вам удастся найти общность вашей архитектуры с типовой на рынке, вы сможете перейти на следующий этап: наполнить её типовыми элементами, технологиями и решениями. И сэкономить время и ресурсы на развитие ключевой функциональности вашего продукта.