Перейти к содержимому

Диаграммы

Представьте, каково убедить астероид двигаться по эллипсу.
Стивен Хокинг — «Высший замысел»
Одна система показана как контекст, поток, последовательность и состояние.
Communication Engineering · диаграммы

Диаграмма — модель, а модель всегда что-то отбрасывает. Поэтому вопрос не «правильная ли схема», а «подходит ли это упрощение для текущего решения».

До выбора нотации запишите вопрос аудитории:

  • Какие системы входят в контур?
  • Кто инициирует запрос и где меняются данные?
  • В каком порядке взаимодействуют участники?
  • Где возможен отказ?
  • Кто владеет компонентом?
  • Как пользователь проходит сценарий?

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

Показывает систему, внешних участников и соседние системы. Нужна, чтобы согласовать границу.

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

Показывает порядок сообщений, ожидание и альтернативные ветки. Особенно полезна для интеграций, авторизации и повторной доставки.

Показывает выбор и переходы процесса. Хорош для пользовательского сценария, бизнес-правила и операционной инструкции.

Показывает допустимые состояния и переходы. Сильнее списка флагов, когда важны инварианты.

Показывает происхождение, преобразование, хранение и потребителей данных. Нужна для privacy, аналитики и миграций.

Определите значение формы, цвета и линии.

  • прямоугольник — компонент;
  • человек — роль;
  • сплошная стрелка — синхронный вызов;
  • пунктир — событие;
  • янтарный — риск;
  • красный — отказ, а не просто «важно».

Легенда не спасает хаотичную схему, но делает условности проверяемыми.

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

Полезна связка:

  1. контекст;
  2. ключевой поток;
  3. деталь спорного участка.

Архитектурная диаграмма без даты быстро становится ложным источником истины. Укажите:

  • текущая или целевая система;
  • дату или версию;
  • владельца;
  • ссылку на исходник;
  • известные исключения.
Проблема

На схеме 60 блоков, стрелки пересекаются, цвета не имеют значения. Автор двадцать минут объясняет, куда смотреть.

Перепроектирование

Первая схема показывает пять систем и границу ответственности. Вторая — только путь оплаты. Третья — повторную доставку и идемпотентность. Остальные компоненты перечислены ссылкой.

Проверка

Читатель может ответить на главный вопрос без устного комментария.

Текстовые диаграммы удобны для version control, review и автоматической сборки. Они особенно подходят для flowchart, sequence и state. Но сложная свободная композиция или визуальная история может потребовать графического редактора.

Выбирайте инструмент по стоимости изменения, а не по идеологии.

Три уровня

Выбери сложную систему и нарисуй три схемы: контекст на 5–7 узлов, один ключевой поток и детализацию одного риска. Дай каждую человеку с отдельным вопросом.