Экспертный блог 8 мин чтения

Разведка чужой системы перед проектом: объём и риск за 1-3 дня

Как за 1-3 дня оценить объём и риск проекта на чужой системе: что смотреть, что спросить у владельца, как устроен пробный разбор, что в отчёте и как выбрать между «делать, чинить, переписать». Честно про то, чего нельзя узнать без доступа.

разведка перед проектомоценка рисковтехнический аудитчужая системасметаинтеграции

Коротко (TL;DR)

  • Разведка нужна, когда проект строится на чужой системе: старом сайте, чужом API, данных площадки, унаследованном боте. За 1-3 дня она отвечает на вопросы про объём, риск и стоимость владения до того, как вы подписали смету.
  • На выходе отчёт и решение «делать, чинить или переписать». Угаданные допущения в отчёт не попадают: непроверенное записывается как неизвестное.
  • У разведки есть границы. Без доступа нельзя узнать нагрузку, содержимое закрытых разделов и то, как система поведёт себя при росте. Всё это я отмечаю прямо.
  • Закрытые источники и защиту я не трогаю. Цена на разведку фиксируется до начала, опорные позиции прайса: технический аудит от 50 000 ₽, UX-аудит от 30 000 ₽, разработка по часам от 3 000 ₽/час.
Хотите внедрить это у себя?

Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.

Технический аудит

Разведка чужой системы перед проектом это короткая ограниченная работа на 1-3 дня, в которой я смотрю на систему руками, измеряю объём, проверяю, что отдаётся и что закрыто, и записываю результат в отчёт с тремя вариантами: делать на этом основании, чинить существующее или переписывать. Её смысл в том, чтобы решение о бюджете принималось по фактам. Аудит оценивает качество сделанной работы, разведка измеряет масштаб и риск будущей, поэтому я называю её разведкой.

Зачем нужна разведка до сметы

Чужая система выглядит проще, чем она есть. Кажется, что надо забрать карточки, положить в базу и отдать наружу. Но порядок величины меняет всё: логика под тысячу записей и под четверть миллиона отличается устройством базы, индексами и способом обхода. В моём кейсе про каталог данных автоплощадок на одной площадке оказалось около 244 тысяч активных объявлений по пятнадцать-двадцать фотографий. Это превратило вопрос «сколько стоит собрать данные» в вопрос «где хранить картинки и как обновлять каталог», и ответы изменили смету.

Если те же вопросы всплывают на второй неделе разработки, архитектуру приходится менять, а время и деньги тратятся дважды. Именно поэтому разведка в моей работе идёт до договора на разработку. Близкая мысль есть в статье про диагностику перед лечением.

Что я смотрю за 1-3 дня

Набор зависит от типа системы, но основа повторяется.

  • Объём. Сколько записей, файлов, пользователей, запросов. Порядок величины важнее точной цифры.
  • Что отдаётся и что закрыто. Открытые страницы и методы я проверяю запросами, а закрытое логином или защитой фиксирую как границу.
  • Формат и язык данных. Чужие классификаторы, названия, кодировки. Для данных из другой страны отдельная строка работы идёт на приведение названий, об этом есть в кейсе про платформу данных по авто из Китая.
  • Как обновляется. Есть ли лента изменений, метка времени, статус «снято». Если нет, придётся обходить всё заново, и это основная статья расходов.
  • Окружение. Версии языка и CMS, место хостинга, копии, подписки. Устаревшую версию я помечаю как долг. Например, ветка PHP 7.4 по данным php.net закрыта с 28 ноября 2022 года.
  • Инфраструктурные последствия. Сколько займёт диск, что будет с нагрузкой, кто следит за ночными заданиями.

Что я спрашиваю у владельца

До первого запроса к системе у меня короткий список вопросов, на который отвечает заказчик:

  • Кто владелец системы и данных, на ком записаны домен, сервер, аккаунты?
  • Есть ли исходники, доступ в панели, описание запуска, прежние отчёты и переписка с авторами?
  • Что должно работать после проекта и что считается успехом?
  • Какие сбои уже случались и кто о них знал?
  • Какие внешние сервисы подключены и чья там оплата?
  • Что нельзя трогать, потому что от этого живёт бизнес сегодня?

Ответ «не знаю» тоже результат: такой пункт уходит в список неизвестных и влияет на вилку стоимости.

Пробный разбор: небольшой срез вместо веры на слово

Я не верю описаниям, даже рекламным страницам провайдеров. Вместо этого беру узкий срез и прогоняю его от начала до конца. В кейсе про историю авто из Китая по VIN заказчик дал три номера, и я заказал базовый и платный отчёты. Базовый подтвердил комплектацию, платный пришёл с тремя ДТП, но без записей обслуживания и пробега. Обещания провайдеров про угон и национальные проверки в этом тесте не подтвердились, и я вынес их в список непроверенного.

Такой тест стоит недорого и даёт то, чего не даёт чтение документации: реальное время ответа, полноту полей, формат ошибок и то, какой процент данных пустой. Один прогон на три номера ничего не говорит о частоте пустых блоков. Я пишу об этом в отчёте.

Чего нельзя узнать без доступа

Честные границы разведки такие. Без доступа к панели и серверу я не вижу содержимого закрытых разделов, реальной нагрузки, состояния копий и скрытых расписаний. Без прав на аккаунты не проверить, что случится при смене ключа. Снаружи не определить лимиты запросов: в кейсе про каталог автоплощадок три вопроса остались без ответа за день, это ограничение частоты, глубина выдачи и обязательность подписи запроса. Я записал их как неизвестные, потому что от них зависело, нужны ли дополнительные каналы доступа, то есть самая дорогая строка сметы. Угаданное допущение выглядит в документе как проверенный факт, и через месяц их уже не различить.

Ещё одна граница: разведка показывает сегодняшнее состояние. Изменения на стороне источника после отчёта в нём не учтены. Поэтому цифры в отчёте всегда с датой.

Что можно в разведке

Можно смотреть открытые страницы и публичные методы, читать документацию, использовать официальный API, брать официальную выгрузку, снимать копии своих систем, запускать проект на отдельной площадке и делать пробные заказы у провайдеров на тестовых данных. Если нужны сведения владельца, самый быстрый путь это попросить доступ или выгрузку у него. Права на данные и условия использования источника зависят от договоров, это не юридическая консультация, вопросы для юриста.

Чего я не делаю

Я не обхожу защиту, логины, капчи и ограничения чужих сервисов, не использую чужие аккаунты и не забираю данные, к которым у заказчика нет доступа. В кейсе про данные по авто из Китая крупные площадки б/у в основном закрыты логином или защитой. Я их не трогал, и платформа работает только с открытыми списками. Это сразу ограничило объём, и я так и написал в отчёте. Отсутствие запрета в robots.txt тоже разрешением не считаю: в RFC 9309 прямо сказано, что эти правила формой авторизации доступа не являются. Условия площадки и закон смотрятся отдельно. Законный путь простой: договориться с владельцем, запросить выгрузку или взять официальный API.

Отчёт и решение: делать, чинить или переписать

В конце разведки у заказчика на руках отчёт на несколько страниц. В нём есть описание системы, список подтверждённого с отметкой, как проверено, список неизвестных и три варианта дальнейших шагов.

  • Делать на этом основании. Система годится как фундамент, риски известны и закрываются.
  • Чинить. Нужна ограниченная правка существующего, пока не замена.
  • Переписывать. Исправление дороже новой разработки, долг слишком велик, или данных и доступов нет.

К каждому варианту идут срок, трудоёмкость и вилка стоимости владения в месяц. Иногда честный исход разведки такой: проект не нужен. В кейсе про каталог данных я прямо пишу, что иногда проще подписка на готовый источник. Для случаев, когда система вообще осталась без документации, есть соседняя тема: аудит чужого бота или сайта за два часа.

Как я это делаю

Первый день: вопросы владельцу, таблица доступов, снятие копий, первый круг проверок руками и измерения объёма. Второй день: пробный срез через всю цепочку, сверка с документами, список неизвестных. Третий день, если нужен: сравнение вариантов, оценка стоимости владения и черновик отчёта. Для небольшой системы часто хватает одного дня, как было в кейсе про каталог данных. Все пробные запросы идут только к тому, на что у заказчика есть права. Результат разведки заказчик получает в виде документа и может отдать любому разработчику, мои выводы не привязывают проект ко мне. Если сайт или бот оказываются на конструкторе или старом хостинге, следующий шаг описан в статье про то, как забрать сайт, домен и доступы.

Разведку я запускаю как отдельную услугу: технический аудит и разбор чужой системы. Сначала получаете отчёт и решение, потом, если захотите, смету на работы.

Сколько стоит разведка

Свою цену на разведку я называю до начала работы и фиксирую: объём ограничен 1-3 днями и заранее оговорённым списком вопросов, поэтому сумма в процессе не растёт. Ориентиры из моего прайса: технический аудит от 50 000 ₽, срок от 1 недели (полный разбор системы), UX-аудит с замерами от 30 000 ₽, срок от 3 дней (если вопрос в интерфейсе), разработка по часам от 3 000 ₽/час (если вопрос в узком срезе). Точную сумму называю после короткой беседы о системе. Прайс целиком на странице цен.

Частые вопросы

Чем разведка отличается от аудита?

Аудит оценивает, как сделана существующая работа. Разведка измеряет объём и риск работы, которая ещё не началась. Результат разведки: решение «делать, чинить или переписать» и список неизвестных.

Можно ли начать проект без разведки?

Можно, но тогда ключевые решения принимаются вслепую, а их потом тяжело переделывать. Устройство системы выбирается в начале.

Что, если по итогам разведки проект не нужен?

Это нормальный результат. Вы заплатили за короткую работу и сэкономили стоимость неудачной разработки.

Берётесь ли вы за системы, к которым у меня нет прав?

Нет. Если права на систему или данные у вас спорные, сначала нужен юрист. Юридической консультацией это не является, так я организую работу.

Коротко о главном

Разведка за 1-3 дня отвечает на вопросы про объём, доступное, закрытое, обновление и окружение чужой системы. На выходе отчёт, неизвестные записаны как неизвестные, а решение выбирается из трёх вариантов: делать, чинить или переписать. Границы разведки названы прямо: без доступа не видно нагрузки, закрытых разделов и скрытых расписаний. Закрытое и защищённое не трогаем, договариваемся с владельцем или берём официальный API.

Если проект стоит на чужой системе, и вы не уверены в объёме и рисках, напишите мне в Telegram кодовое слово «РАЗВЕДКА», и я скажу, что нужно посмотреть в первую очередь.

Обсудим вашу задачу

Разведка чужой системы перед проектом: отчёт и решение за 1-3 дня

Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.

  • Объём, формат и обновление данных: измерения, а не допущения
  • Пробный разбор на узком срезе до подписания сметы
  • Список неизвестных: что нельзя узнать без доступа
  • Решение: делать, чинить или переписать, со сроком и вилкой стоимости
Пишу о разработке, ИИ и законах для бизнеса

Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.

Готовые решения под ключTurnkey solutionsSoluciones llave en mano交钥匙解决方案Түлхүүр гардуулах шийдэл 451 готовых IT-решений для бизнеса451 ready-made IT solutions for business451 soluciones IT listas para empresas451 个面向企业的现成 IT 解决方案Бизнест зориулсан 451 бэлэн IT шийдэл Автоматизация, боты, AI, 152-ФЗ и платформы · бесплатная консультацияAutomation, bots, AI, data privacy and platforms · free consultationAutomatización, bots, IA, privacidad de datos y plataformas · consulta gratis自动化、机器人、AI、数据合规与平台 · 免费咨询Автоматжуулалт, бот, AI, өгөгдлийн хамгаалалт ба платформ · үнэгүй зөвлөгөө Смотреть каталогView catalogVer catálogo查看目录Каталог үзэх