Рефакторинг Legacy
Код, который работает, но которого боятся трогать. Разбираем систему без документации, покрываем поведение тестами и переписываем по частям — так, чтобы бизнес ни на день не остановился.
Состав работ
по пунктам.
- Аудит кода: размер, зависимости, зоны риска
- Восстановление документации по исходникам
- Характеризационные тесты на текущее поведение
- План миграции по частям с точками отката
- Перенос данных с проверкой целостности
- Обновление зависимостей и закрытие известных CVE
- Разделение монолита там, где это оправдано
- CI/CD, линтеры, автотесты
- Параллельная работа старой и новой системы
- Обучение вашей команды на новом коде
Ситуации,
в которых это окупается.
Ушёл единственный разработчик
Система работает, но никто не знает как. Восстанавливаем картину и делаем изменения безопасными.
Карта системы за 5 рабочих дней
Каждая правка ломает что-то ещё
Покрываем поведение тестами до рефакторинга. После этого изменения перестают быть лотереей.
С 0 до 70% покрытия критичных путей
Устаревший стек
PHP 5, Python 2, Angular 1. Обновляем по частям, между обычными релизами.
40 000 строк за 3 недели
Не выдерживает нагрузку
Профилируем, находим настоящее узкое место и чиним его вместо переписывания всего.
Обычно 3–5 запросов дают 80% тормозов
Четыре шага
от брифа до передачи.
- 01
Разведка
Читаем код, историю коммитов и логи. ИИ помогает быстро прочитать десятки тысяч строк и составить карту.
- 02
Сеть безопасности
Пишем тесты, фиксирующие текущее поведение — включая странности, на которые кто-то уже полагается.
- 03
Миграция по частям
Переносим модуль за модулем, оставляя возможность откатиться на любом шаге.
- 04
Передача
Документация, CI, разбор нового кода с вашей командой. Цель — чтобы мы стали не нужны.
На чём
сделаем.
Три уровня.
Точную смету считаем после брифа.
от 150 000 ₽
5–10 раб. дней
- Аудит до 30 000 строк
- Карта системы и зависимостей
- Список рисков с приоритетами
- План миграции с оценкой
от 600 000 ₽
25–50 раб. дней
- Характеризационные тесты на критичные пути
- Обновление зависимостей и закрытие CVE
- Перенос 2–3 модулей на новый стек
- CI/CD и автотесты
- Обучение команды
по запросу
50–120 раб. дней
- Поэтапный перенос всей системы
- Параллельная работа старой и новой версии
- Миграция данных с проверкой целостности
- Нагрузочное тестирование
- Сопровождение на переходный период
Цены указаны как нижняя граница. Что двигает смету вверх, разобрано на странице стоимости
Про эту
услугу.
01Не проще переписать с нуля?
Почти никогда. В работающей системе спрятаны сотни решений, принятых по реальным причинам, — про них никто не помнит, но бизнес на них опирается. Переписывание с нуля обычно занимает вдвое дольше оценки и воспроизводит те же костыли. Мы переписываем по частям, и на каждом шаге у вас работающая система.
02Как ИИ помогает в рефакторинге?
Он быстро читает: за час строит карту зависимостей по 40 000 строк, находит дубли и мёртвый код, пишет черновики характеризационных тестов. Решение о том, что и как менять, принимает человек — и каждую строку человек же ревьюит. ИИ ускоряет скучное. Решения остаются за инженером.
03А если у нас вообще нет тестов?
Это норма для legacy, и с этого мы и начинаем. Пишем характеризационные тесты: они фиксируют, как система ведёт себя сейчас, включая баги, на которые кто-то уже полагается. Только после этого начинаем менять код — иначе рефакторинг превращается в поиск того, что сломалось.
04Сколько это займёт?
Аудит 30 000 строк — 5–10 рабочих дней, и после него мы называем срок по остальному. Проекты до 100 000 строк обычно укладываются в 2–4 месяца поэтапной миграции. Без аудита любая оценка была бы выдумкой.
Рассчитать стоимость:
Рефакторинг Legacy
Бриф займёт десять минут. В рабочее время отвечаем в течение двух часов, оценка бесплатная.