Диаграммы
Представьте, каково убедить астероид двигаться по эллипсу.
Диаграмма — модель, а модель всегда что-то отбрасывает. Поэтому вопрос не «правильная ли схема», а «подходит ли это упрощение для текущего решения».
Начните с вопроса
Заголовок раздела «Начните с вопроса»До выбора нотации запишите вопрос аудитории:
- Какие системы входят в контур?
- Кто инициирует запрос и где меняются данные?
- В каком порядке взаимодействуют участники?
- Где возможен отказ?
- Кто владеет компонентом?
- Как пользователь проходит сценарий?
Если вопросов несколько, вероятно, нужны несколько связанных диаграмм.
Полезные формы
Заголовок раздела «Полезные формы»Контекстная схема
Заголовок раздела «Контекстная схема»Показывает систему, внешних участников и соседние системы. Нужна, чтобы согласовать границу.
Контейнеры и компоненты
Заголовок раздела «Контейнеры и компоненты»Показывают крупные исполняемые части и ответственность. Не обязаны отражать каждый класс или таблицу.
Sequence diagram
Заголовок раздела «Sequence diagram»Показывает порядок сообщений, ожидание и альтернативные ветки. Особенно полезна для интеграций, авторизации и повторной доставки.
Flowchart
Заголовок раздела «Flowchart»Показывает выбор и переходы процесса. Хорош для пользовательского сценария, бизнес-правила и операционной инструкции.
State diagram
Заголовок раздела «State diagram»Показывает допустимые состояния и переходы. Сильнее списка флагов, когда важны инварианты.
Карта данных
Заголовок раздела «Карта данных»Показывает происхождение, преобразование, хранение и потребителей данных. Нужна для privacy, аналитики и миграций.
Визуальная грамматика
Заголовок раздела «Визуальная грамматика»Определите значение формы, цвета и линии.
- прямоугольник — компонент;
- человек — роль;
- сплошная стрелка — синхронный вызов;
- пунктир — событие;
- янтарный — риск;
- красный — отказ, а не просто «важно».
Легенда не спасает хаотичную схему, но делает условности проверяемыми.
Уровень абстракции
Заголовок раздела «Уровень абстракции»Схема для руководителя и схема для реализации отвечают на разные вопросы. Не показывайте 40 микросервисов, если обсуждается пользовательская ценность. Не оставляйте три облака, если инженеру нужно понять транзакционную границу.
Полезна связка:
- контекст;
- ключевой поток;
- деталь спорного участка.
Время и версия
Заголовок раздела «Время и версия»Архитектурная диаграмма без даты быстро становится ложным источником истины. Укажите:
- текущая или целевая система;
- дату или версию;
- владельца;
- ссылку на исходник;
- известные исключения.
На схеме 60 блоков, стрелки пересекаются, цвета не имеют значения. Автор двадцать минут объясняет, куда смотреть.
ПерепроектированиеПервая схема показывает пять систем и границу ответственности. Вторая — только путь оплаты. Третья — повторную доставку и идемпотентность. Остальные компоненты перечислены ссылкой.
ПроверкаЧитатель может ответить на главный вопрос без устного комментария.
Mermaid и кодовые диаграммы
Заголовок раздела «Mermaid и кодовые диаграммы»Текстовые диаграммы удобны для version control, review и автоматической сборки. Они особенно подходят для flowchart, sequence и state. Но сложная свободная композиция или визуальная история может потребовать графического редактора.
Выбирайте инструмент по стоимости изменения, а не по идеологии.
Выбери сложную систему и нарисуй три схемы: контекст на 5–7 узлов, один ключевой поток и детализацию одного риска. Дай каждую человеку с отдельным вопросом.