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

Описание ИТ-ландшафта

Типы диаграмм​

В ArchiVision данные хранятся в базе в структурированном виде. Сами диаграммы не содержат данные, а служат способом их визуализации и ввода. Это один из основных инструментов архитекторов: через диаграммы создаются и редактируются объекты модели, а также формируется наглядное представление архитектуры.

Загрузка изображения...
Структурированная модель показывает системы, внешних участников и ключевые зависимости ИТ-ландшафта.

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

Структурные диаграммы​

Структурные диаграммы (C1–C4)

Структурные диаграммы показывают статическое устройство системы и связи между её элементами. Они различаются по уровням детализации (C1–C4):

  • C1-диаграммы — обзорные, на них отображаются системы, актёры и связи. Позволяют видеть систему в окружении. Это верхнеуровневые диаграммы (Top level diagrams) и обычно используется лишь одна такая диаграмма на каждую систему, чтобы отразить её место в архитектуре компании и связи с другими системами и группами пользователей (актерами).

  • C2-диаграммы — детализация конкретной системы: её контейнеры, актёры, внешние системы и их связи их связи с описываемыми вами контейнерами.

  • C3-диаграммы — детализация контейнера: показываются компоненты внутри описываемого контейнера, другие контейнеры описываемой системы, внешние системы и актеры, а так же их связи с описываемыми вами компонентами.

  • Низкоуровневые представления — ERD и Domain Class. ArchiVision поддерживает структурированное редактирование таблиц, полей, классов, свойств и связей. Для уровней реализации, которые ведутся непосредственно в коде, используйте генераторы и средства анализа репозитория, а в ArchiVision фиксируйте согласованную архитектурную модель.

Ключевая особенность структурных диаграмм — фокусировка на одном объекте. Если мы раскрываем структуру конкретной системы (C2), то её внутреннее устройство показывается подробно, а все внешние системы остаются на уровне «коробки», взаимодействия с которыми осуществляется через API выставляемой ею. Если мы детализируем контейнер (C3), то на диаграмме показывается только его внутренняя структура, а другие контейнеры этой же системы остаются «снаружи». Такой принцип позволяет проваливаться всё глубже, но при этом сохранять чистоту и читаемость каждой диаграммы.

Поэтому, для минимизации рисков потери актуальности документации, крайне желательно следовать следующему простому правилу:

На диаграммах C2 раскрывайте детали только детализируемых ими систем. Не следует отображать на них контейнеры разных систем и тем более связей между ними. Это правило применяется так же и для диаграмм типа C3 - не отображайте на них компоненты разных контейнеров. Соблюдение этих правил позволит сократить риски появления разночтений в документации, потому что за описание разных систем/контейнеров могут отвечать разные команды и если ваша документация будет включать описание элементов из чужой зоны ответственности, то вы можете не быть своевременно проинформированы о каких-либо изменениях и оперативно внести требующиеся изменения в свою часть документации.

Динамические диаграммы​

Динамические диаграммы внешне похожи на структурные, но их задача другая — они описывают поведение системы во времени через use-case-ы. Поскольку в реальных ландшафтах может быть заведено тысячи элементов, динамические диаграммы позволяют ограничить набор элементов для работы, выделив подмножество, которое участвует в конкретном процессе или группе процессов. На основе этого подмножества создаются сценарии (use-case), которые позволяют описать и визуализировать в каком порядке, при каких условиях и как именно взаимодействуют элементы систем в разных ситуациях, как обрабатываются исключительные ситуации и многое другое.

Таким образом, динамические диаграммы служат «фильтром», через который из огромной архитектуры выделяются конкретные элементы и их связи для последующего использования в use-case-ах.

Через динамические диаграммы можно выйти на конкретные use-case-ы и разобраться как именно работает система. Use-case-ы также называются сценариями использования или просто сценариями.

Диаграммы развертывания​

Диаграммы развертывания показывают, как логическая архитектура реализуется в физической среде. Здесь отображаются центры обработки данных (ЦОД), серверы, узлы, кластеры, облачные сервисы и то, какие программные компоненты где размещаются.

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

Также доступны специализированные Use Case, State, BPMN и другие типы. Полный список и пошаговая работа с ними приведены в разделе «Типы диаграмм».

Резюме​

Структурные диаграммы описывают устройство системы и её связь с окружением, сохраняя принцип фокусировки на одной системе или контейнере;

Динамические диаграммы позволяют ограничивать контекст и строить детальные описания поведения системы во времени;

Диаграммы развертывания связывают модель с реальной инфраструктурой.