Заказчику захочется снизить свои риски и не выключать монолит сразу, а переходить на микросервисы постепенно. Функциональность, реализованная в микросервисах, будет работать параллельно с той же функциональностью в монолите. Поэтому вам придётся реализовывать обратную совместимость микросервисов с монолитом. Это первая часть работы, которую нужно закладывать в оценку (рис. 55).
Рис. 55. Сохранение обратной совместимости
Вторая часть работы связана с тем, что монолит не всегда готов принимать потоки данных в протоколах и форматах, удобных для микросервисов. Например, монолит работает с SOAP, а вы всё реализовываете на protobuf. Или монолит знает WCF, а вы пишите на .NET Core, где WCF реализован частично. Поэтому часто приходится доделывать функции в монолите, чтобы микросервисы могли отсылать в него данные. В таком случае следует заранее договориться с командой монолита о том, с каким приоритетом и по какому процессу они будут принимать задачи от команды микросервисов.
В оценке вам нужно учесть доработки в микросервисах и в монолите для создания обратной совместимости, а также совместное тестирование. Кроме этого, в оценке надо будет учесть разработку механизмов частичного переключения функционала с монолита на микросервисы и обратно.