Паттерн «Душащий фикус» (Strangler fig)
Паттерн замены старой системы по частям вместо переписывания целиком. Назван Мартином Фаулером в 2004 году по фикусу-душителю, который обвивает дерево, пока хозяин не погибнет и не останется один фикус.
На практике: перед старой системой ставят прокси или фасад, чтобы весь трафик шёл через него. Затем возможности переносят на новую реализацию по одной, перенаправляя отдельные маршруты, с откатом для каждого. Старая система сжимается, пока её не удастся отключить. Альтернатива — «большой взрыв», полное переписывание — классический способ потратить два года на релиз, который так и не сравнится с оригиналом. Лучше всего работает, когда границу интерфейса можно провести чётко; сложнее при общей базе данных, где обычно сначала нужен шаг дублирования данных.