К содержимому
Понять

Выяснить, чем вы владеете

Чаще всего софт достаётся владельцу по наследству, а не проектируется им. Прежде чем что-то оценивать или менять, кто-то должен записать, что там есть, — по коду, а не по памяти.

Что входит в категорию

Действия, из которых получается описание реальности

Каждое осматривает, ничего не меняя, и отказывается утверждать то, на что не может показать пальцем.

Разведка архитектуры

Из чего состоит система, как через неё идут запросы и где на самом деле границы — в отличие от того, где их когда-то нарисовали.

Опись системы

Сервисы, задачи, расписания, очереди, внешние вызовы и то, что работает, хотя никто не помнит, кто это запустил.

Схемы C4

Контекст и контейнеры, построенные по коду, где каждый элемент прослеживается до места, откуда он взялся.

Разбор последовательностей

Что происходит от начала до конца в важных сценариях: регистрация, оплата, ночная задача, которой все боятся.

Карта зависимостей

Внутренние и внешние зависимости, какие из них несущие и чей единственный отказ роняет продукт.

Разбор технического долга

Где сосредоточена стоимость изменений и во сколько это обходится сейчас, а не общие слова о том, что надо бы прибраться.

Как идёт разведка

  1. Осмотр без изменений

    Ничего не меняется и ничего не рефакторится «раз уж мы здесь». Процедура это прямо запрещает: разведке, которая правит код, потом нельзя доверять.

  2. Сначала опись, потом мнение

    Факты собираются и записываются до того, как формируется суждение, чтобы выводы можно было потом сверить с ними.

  3. Доказательство под каждым утверждением

    Находка без файла и строки отбрасывается. Именно это правило отличает настоящий аудит от уверенного пересказа.

  4. Результат, который можно сравнить

    У результата фиксированная форма, поэтому тот же запуск через полгода покажет, что изменилось.

Когда начинать отсюда

Начните с другого, если

У вас уже есть свежая документация, которой вы верите

Вы точно знаете, какой компонент проблемный

Нужно решение сегодня, а не описание

Системе две недели и всю её писали вы

Начинайте отсюда, если

Система досталась от человека, который ушёл

Разные люди описывают архитектуру по-разному

Вы собираетесь нанимать, менять или инструктировать разработчика

Предлагают переписывание, а оценить его нечем

Выберите категорию под своё беспокойство

Опишите ситуацию своими словами и посмотрите процедуру — и её стоимость — до того, как что-то потратите.