> Спасибо, ценное замечание!Пожалуйста!)
> Что с этой лапшой делать это уже будет совершенно отдельным внутренним вопросом.Желательно оценить динамику качества кода (косвенно можно оценить по успешности сроков, динамике багов и т.п.). Если за последние полгода код не очищался, то, боюсь, что и написание системы с нуля спасет не на долго.
[UPDATE: сорри, если у вас никто не знает домена, значит там новый коллектив, и мое замечание нерелевантно.] В таком случае нужно начинать с обучения разработчиков. Могу порекомендовать корпоративные курсы Володи Хорикова (
@vkhorikov ) - один из лучших русскоязычных специалистов в области Software Design. Если коллектив хорошо понимает английский, тогда можно организовать авторские курсы Вернона, Янга, Дахана и т.п. Но вообще, обучение - это не быстрый процесс, и было бы хорошо запастись знающим системным архитектором в штат.
Дальше нужно понять что происходит в домене, и как строить систему. Тут как раз Event Storming может помочь.
Дальше нужно оценить экономическую целесообразность рефакторинга. Может оказаться, что
https://docs.microsoft.com/en-us/azure/architecture/patterns/strangler-fig окажется дешевле.
Можно было бы сразу начать делать микросервисы (у Sam Newman есть хорошая книга по распилу, тут на Хабре парень писал конспект по его книге:
https://m.habr.com/ru/post/548054/ ), но без знающего системного архитектора это будет дороже, чем
Monolith First.
Если у вас домена не знает никто, то, вероятно, был обновлен штат разработчиков. На это должны быть веские причины. Обычно такое происходит после эмиссии акций для вывода проекта из финансового кризиса. Если у вас такой же случай, значит, вы сейчас в выгодном положении и нужно умело использовать момент. Инвесторы понимают проблему, и готовы финансировать ее решение.