iac/docs/architecture/example-technology.xml

1392 lines
160 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<model xmlns="http://www.opengroup.org/xsd/archimate/3.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengroup.org/xsd/archimate/3.0/ https://www.opengroup.org/xsd/archimate/3.1/archimate3_Diagram.xsd"
identifier="model-contour">
<name xml:lang="ru">СДЕ Sarex — типовой контур (пример)</name>
<documentation xml:lang="ru">Технологический слой типового контура. Имена кластера, узлов, доменов и реестра заменены на примеры. Прикладной слой присутствует как потребители технологических сервисов и как состав групп узлов; межсервисные связи приложений моделируются отдельно.</documentation>
<elements>
<element identifier="ac-ams-sync" xsi:type="ApplicationComponent">
<name xml:lang="ru">ams-sync</name>
<documentation xml:lang="ru">apps/ams-sync/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-attachments" xsi:type="ApplicationComponent">
<name xml:lang="ru">attachments</name>
<documentation xml:lang="ru">apps/attachments/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-auth-flow" xsi:type="ApplicationComponent">
<name xml:lang="ru">auth-flow</name>
<documentation xml:lang="ru">apps/auth-flow/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-bim" xsi:type="ApplicationComponent">
<name xml:lang="ru">bim</name>
<documentation xml:lang="ru">apps/bim/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-cde" xsi:type="ApplicationComponent">
<name xml:lang="ru">cde</name>
<documentation xml:lang="ru">apps/cde/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-checklists" xsi:type="ApplicationComponent">
<name xml:lang="ru">checklists</name>
<documentation xml:lang="ru">apps/checklists/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-comparisons" xsi:type="ApplicationComponent">
<name xml:lang="ru">comparisons</name>
<documentation xml:lang="ru">apps/comparisons/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-contracts" xsi:type="ApplicationComponent">
<name xml:lang="ru">contracts</name>
<documentation xml:lang="ru">apps/contracts/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-control-interface" xsi:type="ApplicationComponent">
<name xml:lang="ru">control-interface</name>
<documentation xml:lang="ru">apps/control-interface/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-cross-section" xsi:type="ApplicationComponent">
<name xml:lang="ru">cross-section</name>
<documentation xml:lang="ru">apps/cross-section/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-django" xsi:type="ApplicationComponent">
<name xml:lang="ru">django</name>
<documentation xml:lang="ru">apps/django/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-document-link" xsi:type="ApplicationComponent">
<name xml:lang="ru">document-link</name>
<documentation xml:lang="ru">apps/document-link/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-documentations" xsi:type="ApplicationComponent">
<name xml:lang="ru">documentations</name>
<documentation xml:lang="ru">apps/documentations/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-drawings" xsi:type="ApplicationComponent">
<name xml:lang="ru">drawings</name>
<documentation xml:lang="ru">apps/drawings/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-eav" xsi:type="ApplicationComponent">
<name xml:lang="ru">eav</name>
<documentation xml:lang="ru">apps/eav/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-faas" xsi:type="ApplicationComponent">
<name xml:lang="ru">faas</name>
<documentation xml:lang="ru">apps/faas/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-flows" xsi:type="ApplicationComponent">
<name xml:lang="ru">flows</name>
<documentation xml:lang="ru">apps/flows/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-iam" xsi:type="ApplicationComponent">
<name xml:lang="ru">iam</name>
<documentation xml:lang="ru">apps/iam/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-inspections" xsi:type="ApplicationComponent">
<name xml:lang="ru">inspections</name>
<documentation xml:lang="ru">apps/inspections/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-issues" xsi:type="ApplicationComponent">
<name xml:lang="ru">issues</name>
<documentation xml:lang="ru">apps/issues/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-mapper" xsi:type="ApplicationComponent">
<name xml:lang="ru">mapper</name>
<documentation xml:lang="ru">apps/mapper/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-measurements" xsi:type="ApplicationComponent">
<name xml:lang="ru">measurements</name>
<documentation xml:lang="ru">apps/measurements/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-message-hub" xsi:type="ApplicationComponent">
<name xml:lang="ru">message-hub</name>
<documentation xml:lang="ru">apps/message-hub/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-notes" xsi:type="ApplicationComponent">
<name xml:lang="ru">notes</name>
<documentation xml:lang="ru">apps/notes/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-pm" xsi:type="ApplicationComponent">
<name xml:lang="ru">pm</name>
<documentation xml:lang="ru">apps/pm/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-prescriptions" xsi:type="ApplicationComponent">
<name xml:lang="ru">prescriptions</name>
<documentation xml:lang="ru">apps/prescriptions/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-processing" xsi:type="ApplicationComponent">
<name xml:lang="ru">processing</name>
<documentation xml:lang="ru">apps/processing/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-projects" xsi:type="ApplicationComponent">
<name xml:lang="ru">projects</name>
<documentation xml:lang="ru">apps/projects/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-remarks" xsi:type="ApplicationComponent">
<name xml:lang="ru">remarks</name>
<documentation xml:lang="ru">apps/remarks/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-resources" xsi:type="ApplicationComponent">
<name xml:lang="ru">resources</name>
<documentation xml:lang="ru">apps/resources/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-reviews" xsi:type="ApplicationComponent">
<name xml:lang="ru">reviews</name>
<documentation xml:lang="ru">apps/reviews/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-rfi" xsi:type="ApplicationComponent">
<name xml:lang="ru">rfi</name>
<documentation xml:lang="ru">apps/rfi/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-stamp-verification" xsi:type="ApplicationComponent">
<name xml:lang="ru">stamp-verification</name>
<documentation xml:lang="ru">apps/stamp-verification/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-subscriptions" xsi:type="ApplicationComponent">
<name xml:lang="ru">subscriptions</name>
<documentation xml:lang="ru">apps/subscriptions/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-system-log" xsi:type="ApplicationComponent">
<name xml:lang="ru">system-log</name>
<documentation xml:lang="ru">apps/system-log/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-transmittal" xsi:type="ApplicationComponent">
<name xml:lang="ru">transmittal</name>
<documentation xml:lang="ru">apps/transmittal/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-workspaces" xsi:type="ApplicationComponent">
<name xml:lang="ru">workspaces</name>
<documentation xml:lang="ru">apps/workspaces/&lt;contour&gt;/</documentation>
</element>
<element identifier="ac-bim-converter" xsi:type="ApplicationComponent">
<name xml:lang="ru">Конвертер BIM-моделей</name>
<documentation xml:lang="ru">Воркер, слушающий очередь RabbitMQ. Обрабатывает файлы NWD (Navisworks) и RVT (Revit): получает задание из очереди, читает исходный файл из объектного хранилища и возвращает туда результат конвертации. Прямых HTTP-вызовов от прикладных сервисов не принимает — единственная точка входа это очередь, что позволяет накапливать задания и переживать недоступность фермы без потери запросов.</documentation>
</element>
<element identifier="nd-cluster" xsi:type="Node">
<name xml:lang="ru">Кластер k8s-prod</name>
<documentation xml:lang="ru">Flux CD — набор контроллеров Kubernetes, реализующий подход GitOps: вся система описана декларативно и находится под контролем версий, а автоматика непрерывно приводит развёрнутое окружение в соответствие состоянию, заданному в Git. Контроллеры с заданным интервалом сравнивают фактическое состояние ресурсов с желаемым и применяют расхождения. Основные ресурсы: GitRepository описывает источник, Kustomization — набор манифестов для согласования, HelmRelease — развёртывание Helm-чарта.
Кластер Kubernetes, в котором работает вся платформа. Состав задаётся одним файлом clusters/&lt;контур&gt;/kustomization.yaml — плоским списком инфраструктурных компонентов и приложений; он же является источником истины о том, что развёрнуто. Доставка изменений — GitOps через FluxCD v2: Flux читает манифесты из Git-сервера контура и приводит кластер к описанному состоянию, ручной kubectl apply в нормальном процессе не используется. Прикладные сервисы ставятся не собственными чартами, а одним общим universal-chart, что делает их конфигурацию единообразной.</documentation>
</element>
<element identifier="ss-istio-gw" xsi:type="SystemSoftware">
<name xml:lang="ru">Istio Ingress Gateway</name>
<documentation xml:lang="ru">Istio — открытый service mesh, который прозрачно накладывается на существующие распределённые приложения и централизованно управляет взаимодействием сервисов, не требуя изменений в коде. Ingress-шлюз — это компонент плоскости данных Istio на границе mesh: он принимает внешний трафик, терминирует TLS и передаёт запросы внутрь по правилам, заданным ресурсами Gateway и VirtualService.
Единственная точка входа внешнего трафика в контур. Терминирует TLS и передаёт запросы дальше по правилам service mesh. Публикуется через NodePort и в типовой конфигурации привязан к выделенному узлу — это делает его единственной точкой отказа для всего внешнего доступа: при потере узла контур остаётся живым внутри, но недоступен снаружи. Резервирование ingress стоит рассматривать отдельно от резервирования приложений.</documentation>
</element>
<element identifier="ss-istio-mesh" xsi:type="SystemSoftware">
<name xml:lang="ru">Istio Service Mesh</name>
<documentation xml:lang="ru">Istio разделён на плоскость управления, которая хранит конфигурацию и раздаёт её прокси, и плоскость данных из прокси Envoy рядом с каждым подом. Такая схема даёт три группы возможностей: управление трафиком (маршрутизация, балансировка HTTP/gRPC/TCP, повторы и переключение при отказах), безопасность (взаимный TLS между сервисами) и наблюдаемость — метрики, логи и трассировки для всего трафика кластера собираются автоматически. Конфигурация меняется на лету: Istio перепрограммирует прокси без пересборки и перезапуска приложений.
Управляющая конфигурация сети: Gateway описывает внешние точки входа, VirtualService — маршрутизацию по путям на конкретные сервисы, RequestAuthentication — проверку JWT на входе. Поставляется чартом istio-config-contour и является тем местом, где видно, какие приложения вообще опубликованы наружу. В части контуров разводка по путям вынесена за пределы репозитория во внешний nginx — тогда в модели виден только факт публикации, но не таблица маршрутов. Sidecar-прокси рядом с каждым подом дают mTLS между сервисами и метрики трафика.</documentation>
</element>
<element identifier="ss-certmanager" xsi:type="SystemSoftware">
<name xml:lang="ru">cert-manager</name>
<documentation xml:lang="ru">cert-manager — расширение Kubernetes, которое выпускает TLS-сертификаты для нагрузок в кластере и продлевает их до истечения срока. Ресурсы Issuer и ClusterIssuer описывают, у какого удостоверяющего центра и на каких условиях получать сертификат, а ресурс Certificate — сам запрошенный сертификат; результат складывается в секрет Kubernetes, откуда его читают поды и ingress-контроллеры. Поддерживаются разные источники: Let's Encrypt, HashiCorp Vault, внутренние PKI и самоподписанные издатели.
Выпускает и автоматически продлевает TLS-сертификаты для внешних доменов контура. Работает через ClusterIssuer: в контурах с доступом в интернет это Let's Encrypt, в закрытых — самоподписанный издатель, как в этом примере. Выпущенный wildcard-сертификат складывается в секрет, который использует ingress-gateway. Практическое следствие самоподписанного варианта: клиентам нужно доверять корневому сертификату контура, иначе браузеры и интеграции будут ругаться.</documentation>
</element>
<element identifier="ss-zitadel" xsi:type="SystemSoftware">
<name xml:lang="ru">Zitadel</name>
<documentation xml:lang="ru">Zitadel — платформа управления идентификацией, реализующая отраслевые стандарты OIDC, OAuth 2.0 и SAML для входа и единой аутентификации. Отличительные черты — мультиарендность с настройкой оформления под каждого арендатора, полный журнал аудита на основе event sourcing и возможность развёртывания как в облаке, так и на своих мощностях. Закрывает задачи аутентификации, многофакторной проверки и управления пользователями без разработки собственной подсистемы входа.
Основной поставщик идентичности платформы, отвечает за аутентификацию пользователей по OIDC и выдачу токенов. Прикладные сервисы не проверяют пароли сами: они валидируют JWT по публичному ключу, а на границе контура это же делает Istio через RequestAuthentication. Самый широко используемый технологический сервис контура — с ним так или иначе работает подавляющее большинство приложений, включая фронтенды. Отдельный микрофронтенд auth-flow обслуживает сценарий логина и обработку OIDC-callback. Keycloak в платформе тоже встречается, но как вторичный вариант и внутри поставки Camunda.</documentation>
</element>
<element identifier="ss-vault" xsi:type="SystemSoftware">
<name xml:lang="ru">Vault + Agent Injector</name>
<documentation xml:lang="ru">HashiCorp Vault — централизованная система управления секретами: учётными данными, ключами шифрования и сертификатами, с аудитом всех обращений. Работает по схеме «клиент аутентифицируется — получает токен, связанный с набором политик — обращается к секретам по путям — Vault проверяет права и записывает обращение в журнал независимо от исхода». Модульная архитектура позволяет подключать разные способы аутентификации и разные хранилища секретов, включая выдачу временных учётных данных к базам данных.
Единственный механизм доставки секретов приложениям. Секреты не лежат в манифестах и не хранятся в Git: под получает их через sidecar Agent Injector, который аутентифицируется в Vault по service account пода и монтирует значения из пути вида secrets/data/apps/&lt;приложение&gt;/postgres. Ролью и service account служит имя приложения — соглашение единообразно для всех сервисов. Трафик к Vault выведен из-под sidecar-прокси Istio отдельной аннотацией, иначе инициализация пода не проходит.</documentation>
</element>
<element identifier="ss-postgres" xsi:type="SystemSoftware">
<name xml:lang="ru">PostgreSQL</name>
<documentation xml:lang="ru">PostgreSQL — объектно-реляционная СУБД с открытым исходным кодом и почти сорокалетней историей развития. Соответствует требованиям ACID, использует многоверсионное управление конкурентным доступом (MVCC) и покрывает не менее 170 из 177 обязательных возможностей ядра стандарта SQL:2023. Поддерживает широкий набор типов данных, включая JSON и JSONB, геометрические и пользовательские типы, а также расширения — хранимые процедуры на нескольких языках, обёртки сторонних источников данных и геопространственное расширение PostGIS.
Основное реляционное хранилище контура и самый востребованный технологический сервис после управления секретами. Разворачивается внутри кластера как StatefulSet на сетевом хранилище; в части контуров вместо него используется внешняя managed-СУБД, и тогда в кластере остаются только реквизиты подключения. Базы разделены по приложениям — общей схемы нет, каждый сервис владеет своими таблицами, что важно для независимости релизов. Реквизиты всегда приходят через Vault, поэтому в манифестах приложения видна лишь аннотация инжектора.</documentation>
</element>
<element identifier="ss-redis" xsi:type="SystemSoftware">
<name xml:lang="ru">Redis</name>
<documentation xml:lang="ru">Redis — сервер структур данных, хранящий данные в оперативной памяти. Помимо строк поддерживает хеши, списки, множества, упорядоченные множества и потоки — журнал с добавлением в конец. Такой набор примитивов закрывает разные задачи одним инструментом: кэширование, хранение сессий, очереди, счётчики и обработку событий. Предусмотрены механизмы сохранения данных на диск, что позволяет пережить перезапуск.
Кэш и брокер фоновых задач. В отличие от PostgreSQL, не является общей инфраструктурой контура: разворачивается точечно, в namespace тех приложений, которым он действительно нужен — как правило, там, где есть Celery-воркеры или требуется разделяемое состояние между репликами. Из-за этого экземпляров Redis в контуре несколько и они независимы; общего кэша, через который сервисы обмениваются данными, в платформе нет.</documentation>
</element>
<element identifier="ss-kafka" xsi:type="SystemSoftware">
<name xml:lang="ru">Kafka</name>
<documentation xml:lang="ru">Apache Kafka — платформа потоковой обработки событий: публикация, хранение и обработка непрерывных потоков данных в реальном времени. События пишутся в темы, темы делятся на разделы и распределяются по брокерам ради масштабирования; производители пишут, потребители читают. Ключевое отличие от обычной очереди в том, что событие не удаляется после прочтения, а хранится по настраиваемой политике — поэтому его можно перечитать заново и подключить новых потребителей к уже накопленной истории.
Шина событий для асинхронного обмена между сервисами. Используется там, где нужен журнал событий с возможностью повторного чтения и несколькими независимыми потребителями: аудит действий, уведомления, синхронизация состояний между доменами. Соседствует с RabbitMQ, и это осознанное разделение, а не дублирование: Kafka отвечает за поток событий, RabbitMQ — за адресную доставку задач. Часть приложений подключена к обеим шинам одновременно.</documentation>
</element>
<element identifier="ss-rabbit" xsi:type="SystemSoftware">
<name xml:lang="ru">RabbitMQ</name>
<documentation xml:lang="ru">RabbitMQ — брокер сообщений, реализующий протокол AMQP 0-9-1 для асинхронного обмена между приложениями. Опубликованное сообщение попадает в обменник, привязки маршрутизируют его в очереди по ключу маршрутизации, а из очередей его забирают потребители. Доставка подтверждается: при явном подтверждении потребитель сообщает об успешной обработке, и если он отвалился, не подтвердив сообщение, брокер передаст его другому потребителю или дождётся появления нового — сообщение не теряется.
Очередь задач для фоновой обработки: выгрузки, конвертация документов, рассылки, длительные операции, которые нельзя выполнять в HTTP-запросе. В отличие от Kafka, ориентирован на адресную доставку конкретному обработчику с подтверждением и повторами. В ряде контуров панель управления публикуется наружу отдельным доменом, что удобно для эксплуатации, но требует внимания к доступу — это полноценный административный интерфейс.</documentation>
</element>
<element identifier="ss-camunda" xsi:type="SystemSoftware">
<name xml:lang="ru">Camunda Platform</name>
<documentation xml:lang="ru">Camunda 8 — платформа оркестрации и автоматизации бизнес-процессов с участием людей, систем и устройств. В её основе движок Zeebe, координирующий исполнение процессов в распределённой среде; Operate и Tasklist дают операционную видимость и работу с пользовательскими задачами, Optimize — аналитику по исполнению. Работу выполняют job-воркеры: внешние компоненты, которые опрашивают кластер на предмет заданий своего типа, обрабатывают их и возвращают результат.
Движок исполнения бизнес-процессов в нотации BPMN. Через него проходят маршруты согласования документов: процесс описывает шаги и условия, а конкретные действия выполняют воркеры прикладных сервисов, подключённые к Zeebe как job-workers по типу задачи. Это единственный компонент контура, где логика согласования выражена декларативно и её можно менять без пересборки сервисов. Важная особенность для чтения конфигурации: переменные ZEEBE_* и CAMUNDA_* приходят из k8s-секрета, поэтому в манифестах приложений связь с Camunda не видна — она подтверждается только документацией сервисов.</documentation>
</element>
<element identifier="ss-cam-zeebe" xsi:type="SystemSoftware">
<name xml:lang="ru">Zeebe</name>
<documentation xml:lang="ru">Ядро движка: хранит состояние запущенных процессов и раздаёт задачи воркерам. Работает как StatefulSet, состояние на диске.</documentation>
</element>
<element identifier="ss-cam-zeebe-gateway" xsi:type="SystemSoftware">
<name xml:lang="ru">Zeebe Gateway</name>
<documentation xml:lang="ru">Точка подключения клиентов и job-workers к ядру. Именно её адрес прикладные сервисы получают в переменной ZEEBE_GATEWAY.</documentation>
</element>
<element identifier="ss-cam-operate" xsi:type="SystemSoftware">
<name xml:lang="ru">Operate</name>
<documentation xml:lang="ru">Интерфейс и REST API для наблюдения за экземплярами процессов: где застрял маршрут, какие переменные, какие инциденты. Используется не только людьми — прикладные сервисы обращаются к его API программно.</documentation>
</element>
<element identifier="ss-cam-tasklist" xsi:type="SystemSoftware">
<name xml:lang="ru">Tasklist</name>
<documentation xml:lang="ru">Интерфейс пользовательских задач BPMN — шагов процесса, требующих действия человека.</documentation>
</element>
<element identifier="ss-cam-optimize" xsi:type="SystemSoftware">
<name xml:lang="ru">Optimize</name>
<documentation xml:lang="ru">Аналитика по исполнению процессов: длительности, узкие места, статистика прохождения маршрутов.</documentation>
</element>
<element identifier="ss-cam-identity" xsi:type="SystemSoftware">
<name xml:lang="ru">Identity</name>
<documentation xml:lang="ru">Управление доступом к компонентам Camunda и выдача OAuth-токенов для машинного доступа. В поставке идёт вместе с собственным Keycloak, отдельным от основного поставщика идентичности контура.</documentation>
</element>
<element identifier="ss-cam-connectors" xsi:type="SystemSoftware">
<name xml:lang="ru">Connectors</name>
<documentation xml:lang="ru">Готовые коннекторы к внешним системам, вызываемые из процесса без написания своего воркера.</documentation>
</element>
<element identifier="nd-s3" xsi:type="Node">
<name xml:lang="ru">s3.example.com — объектное хранилище</name>
<documentation xml:lang="ru">Объектное хранилище — масштабируемый репозиторий для неструктурированных данных: файлов, медиа, журналов и резервных копий, без ограничений традиционной файловой системы. Отраслевым стандартом доступа стал API S3, поэтому такие хранилища взаимозаменяемы для приложения. В self-hosted варианте обычно применяется MinIO с S3-совместимым API и распределённым развёртыванием на основе избыточного кодирования (erasure coding): данные разрезаются на фрагменты с избыточностью и раскладываются по узлам, что позволяет пережить отказ части из них дешевле, чем при простом дублировании.
Хранилище файлов платформы: документы, чертежи, модели, вложения, результаты конвертации. Вынесено за пределы кластера — в одних контурах это MinIO на отдельных узлах, в других внешний S3-совместимый сервис заказчика. Именно здесь лежит основной объём данных: базы хранят метаданные и связи, а сами файлы всегда в объектном хранилище. Прямой доступ браузера к хранилищу не используется, отдача файлов идёт через прокси-сервис платформы.</documentation>
</element>
<element identifier="nd-nfs" xsi:type="Node">
<name xml:lang="ru">Сетевое хранилище (StorageClass)</name>
<documentation xml:lang="ru">Класс хранения, из которого выделяются тома для компонентов с состоянием — прежде всего для PostgreSQL, а также для брокеров и движка процессов. От его производительности напрямую зависит отзывчивость СУБД, поэтому это место стоит проверять первым при жалобах на медленную работу платформы.</documentation>
</element>
<element identifier="nd-gitea" xsi:type="Node">
<name xml:lang="ru">Git-сервер контура</name>
<documentation xml:lang="ru">Хранит манифесты, из которых Flux собирает состояние кластера. В закрытых контурах наполняется зеркалированием из основного репозитория разработки, что даёт контуру автономность: даже при отсутствии связи с внешним миром развёртывание работает из локальной копии. Практически это означает, что изменение, попавшее в основной репозиторий, доедет до контура не мгновенно, а после синхронизации зеркала.</documentation>
</element>
<element identifier="nd-cr" xsi:type="Node">
<name xml:lang="ru">registry.example.com</name>
<documentation xml:lang="ru">Реестр, из которого кластер получает и Helm-чарты (в формате OCI), и образы контейнеров. Единая точка поставки: версия чарта и тег образа, указанные в манифестах, разрешаются именно здесь. Доступность реестра — обязательное условие для развёртывания и перезапуска подов, поэтому в закрытых контурах он размещается внутри периметра.</documentation>
</element>
<element identifier="ar-charts" xsi:type="Artifact">
<name xml:lang="ru">Helm-чарты (OCI)</name>
</element>
<element identifier="ar-images" xsi:type="Artifact">
<name xml:lang="ru">Образы контейнеров</name>
</element>
<element identifier="nd-frontend" xsi:type="Node">
<name xml:lang="ru">frontend-node-01</name>
<documentation xml:lang="ru">Узел, к которому привязан ingress-gateway через nodeSelector. Привязка сделана ради предсказуемого адреса для внешней балансировки и правил межсетевого экрана, но ценой того, что внешний доступ зависит от одного узла.</documentation>
</element>
<element identifier="ts-ingress" xsi:type="TechnologyService">
<name xml:lang="ru">Маршрутизация HTTPS-трафика</name>
<documentation xml:lang="ru">Публикация приложений наружу: терминация TLS, разбор внешнего домена и пути, направление запроса нужному сервису, проверка токена на границе. Сервисом пользуются только те приложения, у которых есть внешний интерфейс; остальные доступны исключительно внутри кластера.</documentation>
</element>
<element identifier="ts-tls" xsi:type="TechnologyService">
<name xml:lang="ru">Выпуск TLS-сертификатов</name>
<documentation xml:lang="ru">Автоматическое получение и продление сертификатов для доменов контура. Потребитель у сервиса один — ingress-gateway; приложения с ним не взаимодействуют, поэтому отдельного представления с потребителями у него нет.</documentation>
</element>
<element identifier="ts-oidc" xsi:type="TechnologyService">
<name xml:lang="ru">Аутентификация OIDC</name>
<documentation xml:lang="ru">Проверка личности пользователя и выдача токена, по которому сервисы принимают решение о доступе. Самый массово используемый сервис контура. Значительная часть связей подтверждается только документацией приложений: публичный ключ и параметры подключения приходят из секретов, а не из манифестов.</documentation>
</element>
<element identifier="ts-secrets" xsi:type="TechnologyService">
<name xml:lang="ru">Управление секретами</name>
<documentation xml:lang="ru">Выдача приложениям реквизитов доступа к базам, брокерам и хранилищам во время запуска пода. Практически универсальная зависимость: почти каждый сервис с состоянием стартует только после успешного получения секретов, поэтому недоступность этого сервиса останавливает не работу, а перезапуск и выкатку.</documentation>
</element>
<element identifier="ts-rdbms" xsi:type="TechnologyService">
<name xml:lang="ru">Реляционное хранилище</name>
<documentation xml:lang="ru">Хранение структурированных данных доменных областей: карточек, связей, статусов, журналов. У каждого сервиса своя база, общей схемы нет — обмен между сервисами идёт через API и шины, а не через общие таблицы.</documentation>
</element>
<element identifier="ts-cache" xsi:type="TechnologyService">
<name xml:lang="ru">Кэш</name>
<documentation xml:lang="ru">Разделяемое короткоживущее состояние и очередь фоновых задач для сервисов с Celery-воркерами. Востребован узким кругом приложений, поэтому разворачивается точечно, а не как общая инфраструктура контура.</documentation>
</element>
<element identifier="ts-events" xsi:type="TechnologyService">
<name xml:lang="ru">Событийная шина</name>
<documentation xml:lang="ru">Асинхронная публикация событий с сохранением журнала и несколькими независимыми потребителями. Используется там, где важен факт изменения и возможность его повторно прочитать: аудит, уведомления, синхронизация состояний между доменами.</documentation>
</element>
<element identifier="ts-amqp" xsi:type="TechnologyService">
<name xml:lang="ru">Очередь сообщений AMQP</name>
<documentation xml:lang="ru">Адресная доставка задач фоновым обработчикам с подтверждением и повторами. Обслуживает длительные операции — конвертацию, выгрузки, рассылки, — которые нельзя выполнять внутри HTTP-запроса.</documentation>
</element>
<element identifier="ts-bpmn" xsi:type="TechnologyService">
<name xml:lang="ru">Оркестрация процессов BPMN</name>
<documentation xml:lang="ru">Исполнение маршрутов согласования, описанных схемой BPMN: движок ведёт состояние процесса и раздаёт шаги воркерам прикладных сервисов. Позволяет менять логику согласования без пересборки сервисов. Связь с потребителем не видна в манифестах — параметры подключения приходят из секрета.</documentation>
</element>
<element identifier="ts-object" xsi:type="TechnologyService">
<name xml:lang="ru">Объектное хранилище</name>
<documentation xml:lang="ru">Хранение и выдача файлов: документов, чертежей, моделей, вложений и производных представлений. Базовый сервис для всех документоориентированных областей платформы — в реляционных базах лежат только метаданные, содержимое всегда здесь.</documentation>
</element>
<element identifier="ng-processing" xsi:type="Node">
<name xml:lang="ru">Группа узлов processing (Сервера приложений)</name>
<documentation xml:lang="ru">Узлы под вычислительно тяжёлую обработку, вынесенную из общего пула приложений: конвертация и разбор файлов, построение производных представлений документов и моделей. Отделены от остальных прикладных серверов намеренно — такая нагрузка неравномерна и способна вытеснить интерактивные сервисы, если делить с ними ресурсы.</documentation>
</element>
<element identifier="ng-app" xsi:type="Node">
<name xml:lang="ru">Группа узлов generic (Сервера приложений)</name>
<documentation xml:lang="ru">Основной пул прикладных серверов: здесь работает подавляющее большинство сервисов платформы — и бэкенды доменных областей, и микрофронтенды. Нагрузка преимущественно интерактивная, запрос-ответ. Это самая массовая группа, и именно её объём определяет, сколько ресурсов требует контур.</documentation>
</element>
<element identifier="ng-storage" xsi:type="Node">
<name xml:lang="ru">Объектное хранилище</name>
<documentation xml:lang="ru">Узлы файлового хранилища. Отделены от вычислительных, потому что растут по другому закону: объём здесь определяется накопленными документами и моделями за всё время эксплуатации, а не числом одновременных пользователей. Это же делает группу главным кандидатом на резервное копирование.</documentation>
</element>
<element identifier="ng-db" xsi:type="Node">
<name xml:lang="ru">Группа узлов DB (Базы данных)</name>
<documentation xml:lang="ru">Узлы СУБД. Вынесены отдельно по двум причинам: предсказуемая производительность дисков и возможность обслуживать базы, не затрагивая прикладные сервисы. Хранят метаданные и связи всех доменных областей; при потере данных этой группы файлы в объектном хранилище останутся, но станут неадресуемыми.</documentation>
</element>
<element identifier="ng-k8s" xsi:type="Node">
<name xml:lang="ru">Группа узлов K8s (Поддерживающая инфраструктура)</name>
<documentation xml:lang="ru">Узлы платформенных сервисов, на которых не работает прикладная логика: сеть и вход в контур, идентификация, секреты, брокеры, движок процессов, кэш. Прикладные сервисы без этой группы нефункциональны — здесь сосредоточены зависимости, общие для всех доменных областей.</documentation>
</element>
<element identifier="ng-repo" xsi:type="Node">
<name xml:lang="ru">Репозиторий компонентов</name>
<documentation xml:lang="ru">Узлы поставки: реестр чартов и образов, а также Git-сервер, из которого Flux читает манифесты. Обеспечивают автономность контура — развёртывание и перезапуск не требуют выхода во внешнюю сеть. Состав группы требует подтверждения: не исключено, что под репозиторием компонентов понимается только реестр артефактов.</documentation>
</element>
<element identifier="ng-cad" xsi:type="Node">
<name xml:lang="ru">CAD ферма</name>
<documentation xml:lang="ru">Узлы обработки исходных файлов BIM-моделей в проприетарных форматах NWD и RVT. Работают асинхронно: воркер разбирает очередь заданий, забирает исходный файл из объектного хранилища, конвертирует его в пригодный для просмотра и анализа вид и складывает результат обратно. Вынесены в отдельную группу, потому что требуют специфического окружения и дают тяжёлую неравномерную нагрузку — обработка одной модели занимает несоизмеримо больше времени, чем любой интерактивный запрос. В манифестах кластера этих компонентов нет: группа обслуживается вне GitOps-контура платформы.</documentation>
</element>
</elements>
<relationships>
<relationship identifier="rel-001" source="nd-cluster" target="ss-istio-gw" xsi:type="Composition"/>
<relationship identifier="rel-002" source="nd-cluster" target="ss-istio-mesh" xsi:type="Composition"/>
<relationship identifier="rel-003" source="nd-cluster" target="ss-certmanager" xsi:type="Composition"/>
<relationship identifier="rel-004" source="nd-cluster" target="ss-zitadel" xsi:type="Composition"/>
<relationship identifier="rel-005" source="nd-cluster" target="ss-vault" xsi:type="Composition"/>
<relationship identifier="rel-006" source="nd-cluster" target="ss-postgres" xsi:type="Composition"/>
<relationship identifier="rel-007" source="nd-cluster" target="ss-redis" xsi:type="Composition"/>
<relationship identifier="rel-008" source="nd-cluster" target="ss-kafka" xsi:type="Composition"/>
<relationship identifier="rel-009" source="nd-cluster" target="ss-rabbit" xsi:type="Composition"/>
<relationship identifier="rel-010" source="nd-cluster" target="ss-camunda" xsi:type="Composition"/>
<relationship identifier="rel-011" source="ss-camunda" target="ss-cam-zeebe" xsi:type="Composition"/>
<relationship identifier="rel-012" source="ss-camunda" target="ss-cam-zeebe-gateway" xsi:type="Composition"/>
<relationship identifier="rel-013" source="ss-camunda" target="ss-cam-operate" xsi:type="Composition"/>
<relationship identifier="rel-014" source="ss-camunda" target="ss-cam-tasklist" xsi:type="Composition"/>
<relationship identifier="rel-015" source="ss-camunda" target="ss-cam-optimize" xsi:type="Composition"/>
<relationship identifier="rel-016" source="ss-camunda" target="ss-cam-identity" xsi:type="Composition"/>
<relationship identifier="rel-017" source="ss-camunda" target="ss-cam-connectors" xsi:type="Composition"/>
<relationship identifier="rel-018" source="nd-nfs" target="ss-postgres" xsi:type="Serving"/>
<relationship identifier="rel-019" source="nd-gitea" target="nd-cluster" xsi:type="Serving"/>
<relationship identifier="rel-020" source="nd-cr" target="ar-charts" xsi:type="Composition"/>
<relationship identifier="rel-021" source="nd-cr" target="ar-images" xsi:type="Composition"/>
<relationship identifier="rel-022" source="nd-cr" target="nd-cluster" xsi:type="Serving"/>
<relationship identifier="rel-023" source="nd-frontend" target="ss-istio-gw" xsi:type="Assignment"/>
<relationship identifier="rel-024" source="ss-istio-gw" target="ts-ingress" xsi:type="Realization"/>
<relationship identifier="rel-025" source="ss-istio-mesh" target="ts-ingress" xsi:type="Realization"/>
<relationship identifier="rel-026" source="ss-certmanager" target="ts-tls" xsi:type="Realization"/>
<relationship identifier="rel-027" source="ts-tls" target="ss-istio-gw" xsi:type="Serving"/>
<relationship identifier="rel-028" source="ss-zitadel" target="ts-oidc" xsi:type="Realization"/>
<relationship identifier="rel-029" source="ss-vault" target="ts-secrets" xsi:type="Realization"/>
<relationship identifier="rel-030" source="ss-postgres" target="ts-rdbms" xsi:type="Realization"/>
<relationship identifier="rel-031" source="ss-redis" target="ts-cache" xsi:type="Realization"/>
<relationship identifier="rel-032" source="ss-kafka" target="ts-events" xsi:type="Realization"/>
<relationship identifier="rel-033" source="ss-rabbit" target="ts-amqp" xsi:type="Realization"/>
<relationship identifier="rel-034" source="ss-camunda" target="ts-bpmn" xsi:type="Realization"/>
<relationship identifier="rel-035" source="nd-s3" target="ts-object" xsi:type="Realization"/>
<relationship identifier="rel-036" source="ts-ingress" target="ac-auth-flow" xsi:type="Serving"/>
<relationship identifier="rel-037" source="ts-ingress" target="ac-bim" xsi:type="Serving"/>
<relationship identifier="rel-038" source="ts-ingress" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-039" source="ts-ingress" target="ac-checklists" xsi:type="Serving"/>
<relationship identifier="rel-040" source="ts-ingress" target="ac-control-interface" xsi:type="Serving"/>
<relationship identifier="rel-041" source="ts-ingress" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-042" source="ts-ingress" target="ac-document-link" xsi:type="Serving"/>
<relationship identifier="rel-043" source="ts-ingress" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-044" source="ts-ingress" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-045" source="ts-ingress" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-046" source="ts-ingress" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-047" source="ts-ingress" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-048" source="ts-ingress" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-049" source="ts-ingress" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-050" source="ts-ingress" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-051" source="ts-ingress" target="ac-remarks" xsi:type="Serving"/>
<relationship identifier="rel-052" source="ts-ingress" target="ac-reviews" xsi:type="Serving"/>
<relationship identifier="rel-053" source="ts-ingress" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-054" source="ts-ingress" target="ac-stamp-verification" xsi:type="Serving"/>
<relationship identifier="rel-055" source="ts-ingress" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-056" source="ts-ingress" target="ac-workspaces" xsi:type="Serving"/>
<relationship identifier="rel-057" source="ts-oidc" target="ac-ams-sync" xsi:type="Serving"/>
<relationship identifier="rel-058" source="ts-oidc" target="ac-auth-flow" xsi:type="Serving"/>
<relationship identifier="rel-059" source="ts-oidc" target="ac-checklists" xsi:type="Serving"/>
<relationship identifier="rel-060" source="ts-oidc" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-061" source="ts-oidc" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-062" source="ts-oidc" target="ac-control-interface" xsi:type="Serving"/>
<relationship identifier="rel-063" source="ts-oidc" target="ac-cross-section" xsi:type="Serving"/>
<relationship identifier="rel-064" source="ts-oidc" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-065" source="ts-oidc" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-066" source="ts-oidc" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-067" source="ts-oidc" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-068" source="ts-oidc" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-069" source="ts-oidc" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-070" source="ts-oidc" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-071" source="ts-oidc" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-072" source="ts-oidc" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-073" source="ts-oidc" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-074" source="ts-oidc" target="ac-prescriptions" xsi:type="Serving"/>
<relationship identifier="rel-075" source="ts-oidc" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-076" source="ts-oidc" target="ac-projects" xsi:type="Serving"/>
<relationship identifier="rel-077" source="ts-oidc" target="ac-remarks" xsi:type="Serving"/>
<relationship identifier="rel-078" source="ts-oidc" target="ac-reviews" xsi:type="Serving"/>
<relationship identifier="rel-079" source="ts-oidc" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-080" source="ts-oidc" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-081" source="ts-oidc" target="ac-workspaces" xsi:type="Serving"/>
<relationship identifier="rel-082" source="ts-secrets" target="ac-attachments" xsi:type="Serving"/>
<relationship identifier="rel-083" source="ts-secrets" target="ac-bim" xsi:type="Serving"/>
<relationship identifier="rel-084" source="ts-secrets" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-085" source="ts-secrets" target="ac-checklists" xsi:type="Serving"/>
<relationship identifier="rel-086" source="ts-secrets" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-087" source="ts-secrets" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-088" source="ts-secrets" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-089" source="ts-secrets" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-090" source="ts-secrets" target="ac-drawings" xsi:type="Serving"/>
<relationship identifier="rel-091" source="ts-secrets" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-092" source="ts-secrets" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-093" source="ts-secrets" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-094" source="ts-secrets" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-095" source="ts-secrets" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-096" source="ts-secrets" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-097" source="ts-secrets" target="ac-measurements" xsi:type="Serving"/>
<relationship identifier="rel-098" source="ts-secrets" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-099" source="ts-secrets" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-100" source="ts-secrets" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-101" source="ts-secrets" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-102" source="ts-secrets" target="ac-resources" xsi:type="Serving"/>
<relationship identifier="rel-103" source="ts-secrets" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-104" source="ts-secrets" target="ac-subscriptions" xsi:type="Serving"/>
<relationship identifier="rel-105" source="ts-secrets" target="ac-system-log" xsi:type="Serving"/>
<relationship identifier="rel-106" source="ts-secrets" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-107" source="ts-secrets" target="ac-workspaces" xsi:type="Serving"/>
<relationship identifier="rel-108" source="ts-rdbms" target="ac-attachments" xsi:type="Serving"/>
<relationship identifier="rel-109" source="ts-rdbms" target="ac-bim" xsi:type="Serving"/>
<relationship identifier="rel-110" source="ts-rdbms" target="ac-checklists" xsi:type="Serving"/>
<relationship identifier="rel-111" source="ts-rdbms" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-112" source="ts-rdbms" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-113" source="ts-rdbms" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-114" source="ts-rdbms" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-115" source="ts-rdbms" target="ac-drawings" xsi:type="Serving"/>
<relationship identifier="rel-116" source="ts-rdbms" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-117" source="ts-rdbms" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-118" source="ts-rdbms" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-119" source="ts-rdbms" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-120" source="ts-rdbms" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-121" source="ts-rdbms" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-122" source="ts-rdbms" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-123" source="ts-rdbms" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-124" source="ts-rdbms" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-125" source="ts-rdbms" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-126" source="ts-rdbms" target="ac-resources" xsi:type="Serving"/>
<relationship identifier="rel-127" source="ts-rdbms" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-128" source="ts-rdbms" target="ac-subscriptions" xsi:type="Serving"/>
<relationship identifier="rel-129" source="ts-rdbms" target="ac-system-log" xsi:type="Serving"/>
<relationship identifier="rel-130" source="ts-rdbms" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-131" source="ts-rdbms" target="ac-workspaces" xsi:type="Serving"/>
<relationship identifier="rel-132" source="ts-cache" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-133" source="ts-cache" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-134" source="ts-cache" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-135" source="ts-cache" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-136" source="ts-cache" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-137" source="ts-events" target="ac-ams-sync" xsi:type="Serving"/>
<relationship identifier="rel-138" source="ts-events" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-139" source="ts-events" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-140" source="ts-events" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-141" source="ts-events" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-142" source="ts-events" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-143" source="ts-events" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-144" source="ts-events" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-145" source="ts-events" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-146" source="ts-events" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-147" source="ts-events" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-148" source="ts-events" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-149" source="ts-events" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-150" source="ts-events" target="ac-system-log" xsi:type="Serving"/>
<relationship identifier="rel-151" source="ts-amqp" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-152" source="ts-amqp" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-153" source="ts-amqp" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-154" source="ts-amqp" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-155" source="ts-amqp" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-156" source="ts-amqp" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-157" source="ts-amqp" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-158" source="ts-amqp" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-159" source="ts-amqp" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-160" source="ts-amqp" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-161" source="ts-amqp" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-162" source="ts-amqp" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-163" source="ts-bpmn" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-164" source="ts-object" target="ac-attachments" xsi:type="Serving"/>
<relationship identifier="rel-165" source="ts-object" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-166" source="ts-object" target="ac-contracts" xsi:type="Serving"/>
<relationship identifier="rel-167" source="ts-object" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-168" source="ts-object" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-169" source="ts-object" target="ac-eav" xsi:type="Serving"/>
<relationship identifier="rel-170" source="ts-object" target="ac-iam" xsi:type="Serving"/>
<relationship identifier="rel-171" source="ts-object" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-172" source="ts-object" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-173" source="ts-object" target="ac-measurements" xsi:type="Serving"/>
<relationship identifier="rel-174" source="ts-object" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-175" source="ts-object" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-176" source="ts-object" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-177" source="ts-object" target="ac-resources" xsi:type="Serving"/>
<relationship identifier="rel-178" source="ts-object" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-179" source="ts-object" target="ac-subscriptions" xsi:type="Serving"/>
<relationship identifier="rel-180" source="ng-processing" target="ac-processing" xsi:type="Assignment"/>
<relationship identifier="rel-181" source="ng-app" target="ac-ams-sync" xsi:type="Assignment"/>
<relationship identifier="rel-182" source="ng-app" target="ac-attachments" xsi:type="Assignment"/>
<relationship identifier="rel-183" source="ng-app" target="ac-auth-flow" xsi:type="Assignment"/>
<relationship identifier="rel-184" source="ng-app" target="ac-bim" xsi:type="Assignment"/>
<relationship identifier="rel-185" source="ng-app" target="ac-cde" xsi:type="Assignment"/>
<relationship identifier="rel-186" source="ng-app" target="ac-checklists" xsi:type="Assignment"/>
<relationship identifier="rel-187" source="ng-app" target="ac-comparisons" xsi:type="Assignment"/>
<relationship identifier="rel-188" source="ng-app" target="ac-contracts" xsi:type="Assignment"/>
<relationship identifier="rel-189" source="ng-app" target="ac-control-interface" xsi:type="Assignment"/>
<relationship identifier="rel-190" source="ng-app" target="ac-cross-section" xsi:type="Assignment"/>
<relationship identifier="rel-191" source="ng-app" target="ac-django" xsi:type="Assignment"/>
<relationship identifier="rel-192" source="ng-app" target="ac-document-link" xsi:type="Assignment"/>
<relationship identifier="rel-193" source="ng-app" target="ac-documentations" xsi:type="Assignment"/>
<relationship identifier="rel-194" source="ng-app" target="ac-drawings" xsi:type="Assignment"/>
<relationship identifier="rel-195" source="ng-app" target="ac-eav" xsi:type="Assignment"/>
<relationship identifier="rel-196" source="ng-app" target="ac-faas" xsi:type="Assignment"/>
<relationship identifier="rel-197" source="ng-app" target="ac-flows" xsi:type="Assignment"/>
<relationship identifier="rel-198" source="ng-app" target="ac-iam" xsi:type="Assignment"/>
<relationship identifier="rel-199" source="ng-app" target="ac-inspections" xsi:type="Assignment"/>
<relationship identifier="rel-200" source="ng-app" target="ac-issues" xsi:type="Assignment"/>
<relationship identifier="rel-201" source="ng-app" target="ac-mapper" xsi:type="Assignment"/>
<relationship identifier="rel-202" source="ng-app" target="ac-measurements" xsi:type="Assignment"/>
<relationship identifier="rel-203" source="ng-app" target="ac-message-hub" xsi:type="Assignment"/>
<relationship identifier="rel-204" source="ng-app" target="ac-notes" xsi:type="Assignment"/>
<relationship identifier="rel-205" source="ng-app" target="ac-pm" xsi:type="Assignment"/>
<relationship identifier="rel-206" source="ng-app" target="ac-prescriptions" xsi:type="Assignment"/>
<relationship identifier="rel-207" source="ng-app" target="ac-projects" xsi:type="Assignment"/>
<relationship identifier="rel-208" source="ng-app" target="ac-remarks" xsi:type="Assignment"/>
<relationship identifier="rel-209" source="ng-app" target="ac-resources" xsi:type="Assignment"/>
<relationship identifier="rel-210" source="ng-app" target="ac-reviews" xsi:type="Assignment"/>
<relationship identifier="rel-211" source="ng-app" target="ac-rfi" xsi:type="Assignment"/>
<relationship identifier="rel-212" source="ng-app" target="ac-stamp-verification" xsi:type="Assignment"/>
<relationship identifier="rel-213" source="ng-app" target="ac-subscriptions" xsi:type="Assignment"/>
<relationship identifier="rel-214" source="ng-app" target="ac-system-log" xsi:type="Assignment"/>
<relationship identifier="rel-215" source="ng-app" target="ac-transmittal" xsi:type="Assignment"/>
<relationship identifier="rel-216" source="ng-app" target="ac-workspaces" xsi:type="Assignment"/>
<relationship identifier="rel-217" source="ng-storage" target="nd-s3" xsi:type="Aggregation"/>
<relationship identifier="rel-218" source="ng-db" target="ss-postgres" xsi:type="Aggregation"/>
<relationship identifier="rel-219" source="ng-k8s" target="ss-istio-gw" xsi:type="Aggregation"/>
<relationship identifier="rel-220" source="ng-k8s" target="ss-istio-mesh" xsi:type="Aggregation"/>
<relationship identifier="rel-221" source="ng-k8s" target="ss-certmanager" xsi:type="Aggregation"/>
<relationship identifier="rel-222" source="ng-k8s" target="ss-zitadel" xsi:type="Aggregation"/>
<relationship identifier="rel-223" source="ng-k8s" target="ss-vault" xsi:type="Aggregation"/>
<relationship identifier="rel-224" source="ng-k8s" target="ss-redis" xsi:type="Aggregation"/>
<relationship identifier="rel-225" source="ng-k8s" target="ss-kafka" xsi:type="Aggregation"/>
<relationship identifier="rel-226" source="ng-k8s" target="ss-rabbit" xsi:type="Aggregation"/>
<relationship identifier="rel-227" source="ng-k8s" target="ss-camunda" xsi:type="Aggregation"/>
<relationship identifier="rel-228" source="ng-repo" target="nd-cr" xsi:type="Aggregation"/>
<relationship identifier="rel-229" source="ng-repo" target="nd-gitea" xsi:type="Aggregation"/>
<relationship identifier="rel-230" source="ng-cad" target="ac-bim-converter" xsi:type="Assignment"/>
<relationship identifier="rel-231" source="ts-amqp" target="ac-bim-converter" xsi:type="Serving"/>
<relationship identifier="rel-232" source="ts-object" target="ac-bim-converter" xsi:type="Serving"/>
<relationship identifier="rel-233" source="ac-django" target="ac-bim" xsi:type="Serving"/>
<relationship identifier="rel-234" source="ac-flows" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-235" source="ac-system-log" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-236" source="ac-workspaces" target="ac-cde" xsi:type="Serving"/>
<relationship identifier="rel-237" source="ac-bim" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-238" source="ac-django" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-239" source="ac-documentations" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-240" source="ac-eav" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-241" source="ac-processing" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-242" source="ac-workspaces" target="ac-comparisons" xsi:type="Serving"/>
<relationship identifier="rel-243" source="ac-bim" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-244" source="ac-documentations" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-245" source="ac-measurements" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-246" source="ac-pm" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-247" source="ac-processing" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-248" source="ac-workspaces" target="ac-django" xsi:type="Serving"/>
<relationship identifier="rel-249" source="ac-attachments" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-250" source="ac-bim" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-251" source="ac-django" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-252" source="ac-drawings" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-253" source="ac-eav" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-254" source="ac-flows" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-255" source="ac-iam" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-256" source="ac-inspections" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-257" source="ac-notes" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-258" source="ac-processing" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-259" source="ac-remarks" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-260" source="ac-resources" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-261" source="ac-subscriptions" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-262" source="ac-system-log" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-263" source="ac-workspaces" target="ac-documentations" xsi:type="Serving"/>
<relationship identifier="rel-264" source="ac-django" target="ac-faas" xsi:type="Serving"/>
<relationship identifier="rel-265" source="ac-documentations" target="ac-faas" xsi:type="Serving"/>
<relationship identifier="rel-266" source="ac-eav" target="ac-faas" xsi:type="Serving"/>
<relationship identifier="rel-267" source="ac-reviews" target="ac-faas" xsi:type="Serving"/>
<relationship identifier="rel-268" source="ac-transmittal" target="ac-faas" xsi:type="Serving"/>
<relationship identifier="rel-269" source="ac-checklists" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-270" source="ac-django" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-271" source="ac-documentations" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-272" source="ac-eav" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-273" source="ac-iam" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-274" source="ac-pm" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-275" source="ac-processing" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-276" source="ac-resources" target="ac-flows" xsi:type="Serving"/>
<relationship identifier="rel-277" source="ac-eav" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-278" source="ac-processing" target="ac-inspections" xsi:type="Serving"/>
<relationship identifier="rel-279" source="ac-django" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-280" source="ac-documentations" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-281" source="ac-eav" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-282" source="ac-flows" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-283" source="ac-iam" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-284" source="ac-processing" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-285" source="ac-resources" target="ac-issues" xsi:type="Serving"/>
<relationship identifier="rel-286" source="ac-django" target="ac-mapper" xsi:type="Serving"/>
<relationship identifier="rel-287" source="ac-django" target="ac-measurements" xsi:type="Serving"/>
<relationship identifier="rel-288" source="ac-django" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-289" source="ac-eav" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-290" source="ac-issues" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-291" source="ac-pm" target="ac-message-hub" xsi:type="Serving"/>
<relationship identifier="rel-292" source="ac-attachments" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-293" source="ac-django" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-294" source="ac-documentations" target="ac-notes" xsi:type="Serving"/>
<relationship identifier="rel-295" source="ac-django" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-296" source="ac-eav" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-297" source="ac-iam" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-298" source="ac-resources" target="ac-pm" xsi:type="Serving"/>
<relationship identifier="rel-299" source="ac-django" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-300" source="ac-documentations" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-301" source="ac-iam" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-302" source="ac-resources" target="ac-processing" xsi:type="Serving"/>
<relationship identifier="rel-303" source="ac-django" target="ac-resources" xsi:type="Serving"/>
<relationship identifier="rel-304" source="ac-django" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-305" source="ac-documentations" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-306" source="ac-eav" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-307" source="ac-resources" target="ac-rfi" xsi:type="Serving"/>
<relationship identifier="rel-308" source="ac-django" target="ac-subscriptions" xsi:type="Serving"/>
<relationship identifier="rel-309" source="ac-system-log" target="ac-subscriptions" xsi:type="Serving"/>
<relationship identifier="rel-310" source="ac-django" target="ac-system-log" xsi:type="Serving"/>
<relationship identifier="rel-311" source="ac-documentations" target="ac-system-log" xsi:type="Serving"/>
<relationship identifier="rel-312" source="ac-django" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-313" source="ac-documentations" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-314" source="ac-flows" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-315" source="ac-iam" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-316" source="ac-resources" target="ac-transmittal" xsi:type="Serving"/>
<relationship identifier="rel-317" source="ac-django" target="ac-workspaces" xsi:type="Serving"/>
<relationship identifier="rel-318" source="ac-documentations" target="ac-workspaces" xsi:type="Serving"/>
</relationships>
<views>
<diagrams>
<view identifier="view-1" xsi:type="Diagram">
<name xml:lang="ru">T1. Технологический слой</name>
<documentation xml:lang="ru">Что развёрнуто в кластере и какие технологические сервисы это даёт. Приложения-потребители вынесены в отдельные представления T2 и далее.</documentation>
<node identifier="do-0001" elementRef="ts-ingress" xsi:type="Element" x="20" y="30" w="150" h="60"/>
<node identifier="do-0002" elementRef="ts-tls" xsi:type="Element" x="185" y="30" w="150" h="60"/>
<node identifier="do-0003" elementRef="ts-oidc" xsi:type="Element" x="350" y="30" w="150" h="60"/>
<node identifier="do-0004" elementRef="ts-secrets" xsi:type="Element" x="515" y="30" w="150" h="60"/>
<node identifier="do-0005" elementRef="ts-rdbms" xsi:type="Element" x="680" y="30" w="150" h="60"/>
<node identifier="do-0006" elementRef="ts-cache" xsi:type="Element" x="845" y="30" w="150" h="60"/>
<node identifier="do-0007" elementRef="ts-events" xsi:type="Element" x="1010" y="30" w="150" h="60"/>
<node identifier="do-0008" elementRef="ts-amqp" xsi:type="Element" x="1175" y="30" w="150" h="60"/>
<node identifier="do-0009" elementRef="ts-bpmn" xsi:type="Element" x="1340" y="30" w="150" h="60"/>
<node identifier="do-0010" elementRef="ts-object" xsi:type="Element" x="1505" y="30" w="150" h="60"/>
<node identifier="do-0011" elementRef="nd-cluster" xsi:type="Element" x="20" y="140" w="1270" h="400"/>
<node identifier="do-0012" elementRef="ss-istio-gw" xsi:type="Element" x="40" y="185" w="220" h="70"/>
<node identifier="do-0013" elementRef="ss-istio-mesh" xsi:type="Element" x="280" y="185" w="220" h="70"/>
<node identifier="do-0014" elementRef="ss-certmanager" xsi:type="Element" x="520" y="185" w="220" h="70"/>
<node identifier="do-0015" elementRef="ss-zitadel" xsi:type="Element" x="760" y="185" w="220" h="70"/>
<node identifier="do-0016" elementRef="ss-vault" xsi:type="Element" x="1000" y="185" w="220" h="70"/>
<node identifier="do-0017" elementRef="ss-postgres" xsi:type="Element" x="40" y="285" w="220" h="70"/>
<node identifier="do-0018" elementRef="ss-redis" xsi:type="Element" x="280" y="285" w="220" h="70"/>
<node identifier="do-0019" elementRef="ss-kafka" xsi:type="Element" x="520" y="285" w="220" h="70"/>
<node identifier="do-0020" elementRef="ss-rabbit" xsi:type="Element" x="760" y="285" w="220" h="70"/>
<node identifier="do-0021" elementRef="ss-camunda" xsi:type="Element" x="40" y="385" w="1230" h="130"/>
<node identifier="do-0022" elementRef="ss-cam-zeebe" xsi:type="Element" x="50" y="435" w="162" h="60"/>
<node identifier="do-0023" elementRef="ss-cam-zeebe-gateway" xsi:type="Element" x="224" y="435" w="162" h="60"/>
<node identifier="do-0024" elementRef="ss-cam-operate" xsi:type="Element" x="398" y="435" w="162" h="60"/>
<node identifier="do-0025" elementRef="ss-cam-tasklist" xsi:type="Element" x="572" y="435" w="162" h="60"/>
<node identifier="do-0026" elementRef="ss-cam-optimize" xsi:type="Element" x="746" y="435" w="162" h="60"/>
<node identifier="do-0027" elementRef="ss-cam-identity" xsi:type="Element" x="920" y="435" w="162" h="60"/>
<node identifier="do-0028" elementRef="ss-cam-connectors" xsi:type="Element" x="1094" y="435" w="162" h="60"/>
<node identifier="do-0029" elementRef="nd-s3" xsi:type="Element" x="1320" y="140" w="330" h="70"/>
<node identifier="do-0030" elementRef="nd-nfs" xsi:type="Element" x="1320" y="230" w="330" h="70"/>
<node identifier="do-0031" elementRef="nd-gitea" xsi:type="Element" x="1320" y="320" w="330" h="70"/>
<node identifier="do-0032" elementRef="nd-cr" xsi:type="Element" x="1320" y="410" w="330" h="130"/>
<node identifier="do-0033" elementRef="ar-charts" xsi:type="Element" x="1335" y="460" w="145" h="60"/>
<node identifier="do-0034" elementRef="ar-images" xsi:type="Element" x="1490" y="460" w="145" h="60"/>
<node identifier="do-0035" elementRef="nd-frontend" xsi:type="Element" x="20" y="570" w="300" h="60"/>
<connection identifier="cn-0039" relationshipRef="rel-027" xsi:type="Relationship" source="do-0002" target="do-0012"/>
<connection identifier="cn-0036" relationshipRef="rel-024" xsi:type="Relationship" source="do-0012" target="do-0001"/>
<connection identifier="cn-0037" relationshipRef="rel-025" xsi:type="Relationship" source="do-0013" target="do-0001"/>
<connection identifier="cn-0038" relationshipRef="rel-026" xsi:type="Relationship" source="do-0014" target="do-0002"/>
<connection identifier="cn-0040" relationshipRef="rel-028" xsi:type="Relationship" source="do-0015" target="do-0003"/>
<connection identifier="cn-0041" relationshipRef="rel-029" xsi:type="Relationship" source="do-0016" target="do-0004"/>
<connection identifier="cn-0042" relationshipRef="rel-030" xsi:type="Relationship" source="do-0017" target="do-0005"/>
<connection identifier="cn-0043" relationshipRef="rel-031" xsi:type="Relationship" source="do-0018" target="do-0006"/>
<connection identifier="cn-0044" relationshipRef="rel-032" xsi:type="Relationship" source="do-0019" target="do-0007"/>
<connection identifier="cn-0045" relationshipRef="rel-033" xsi:type="Relationship" source="do-0020" target="do-0008"/>
<connection identifier="cn-0046" relationshipRef="rel-034" xsi:type="Relationship" source="do-0021" target="do-0009"/>
<connection identifier="cn-0047" relationshipRef="rel-035" xsi:type="Relationship" source="do-0029" target="do-0010"/>
<connection identifier="cn-0049" relationshipRef="rel-018" xsi:type="Relationship" source="do-0030" target="do-0017"/>
<connection identifier="cn-0050" relationshipRef="rel-019" xsi:type="Relationship" source="do-0031" target="do-0011"/>
<connection identifier="cn-0051" relationshipRef="rel-022" xsi:type="Relationship" source="do-0032" target="do-0011"/>
<connection identifier="cn-0048" relationshipRef="rel-023" xsi:type="Relationship" source="do-0035" target="do-0012"/>
</view>
<view identifier="view-2" xsi:type="Diagram">
<name xml:lang="ru">T2. Развёртывание по узлам</name>
<documentation xml:lang="ru">Какие группы узлов какие компоненты несут. Вложенность заменяет стрелки: хост внутри группы — composition, приложение — assignment, системное ПО — aggregation. Имена хостов заданы в профиле контура.</documentation>
<node identifier="do-0052" elementRef="ng-processing" xsi:type="Element" x="20" y="20" w="400" h="112"/>
<node identifier="do-0053" elementRef="ac-processing" xsi:type="Element" x="34" y="54" w="180" h="50"/>
<node identifier="do-0054" elementRef="ng-storage" xsi:type="Element" x="20" y="152" w="400" h="112"/>
<node identifier="do-0055" elementRef="nd-s3" xsi:type="Element" x="34" y="186" w="180" h="50"/>
<node identifier="do-0056" elementRef="ng-db" xsi:type="Element" x="20" y="284" w="400" h="112"/>
<node identifier="do-0057" elementRef="ss-postgres" xsi:type="Element" x="34" y="318" w="180" h="50"/>
<node identifier="do-0058" elementRef="ng-k8s" xsi:type="Element" x="20" y="416" w="400" h="360"/>
<node identifier="do-0059" elementRef="ss-istio-gw" xsi:type="Element" x="34" y="450" w="180" h="50"/>
<node identifier="do-0060" elementRef="ss-istio-mesh" xsi:type="Element" x="229" y="450" w="180" h="50"/>
<node identifier="do-0061" elementRef="ss-certmanager" xsi:type="Element" x="34" y="512" w="180" h="50"/>
<node identifier="do-0062" elementRef="ss-zitadel" xsi:type="Element" x="229" y="512" w="180" h="50"/>
<node identifier="do-0063" elementRef="ss-vault" xsi:type="Element" x="34" y="574" w="180" h="50"/>
<node identifier="do-0064" elementRef="ss-redis" xsi:type="Element" x="229" y="574" w="180" h="50"/>
<node identifier="do-0065" elementRef="ss-kafka" xsi:type="Element" x="34" y="636" w="180" h="50"/>
<node identifier="do-0066" elementRef="ss-rabbit" xsi:type="Element" x="229" y="636" w="180" h="50"/>
<node identifier="do-0067" elementRef="ss-camunda" xsi:type="Element" x="34" y="698" w="180" h="50"/>
<node identifier="do-0068" elementRef="ng-repo" xsi:type="Element" x="20" y="796" w="400" h="112"/>
<node identifier="do-0069" elementRef="nd-cr" xsi:type="Element" x="34" y="830" w="180" h="50"/>
<node identifier="do-0070" elementRef="nd-gitea" xsi:type="Element" x="229" y="830" w="180" h="50"/>
<node identifier="do-0071" elementRef="ng-cad" xsi:type="Element" x="20" y="928" w="400" h="112"/>
<node identifier="do-0072" elementRef="ac-bim-converter" xsi:type="Element" x="34" y="962" w="180" h="50"/>
<node identifier="do-0073" elementRef="ng-app" xsi:type="Element" x="450" y="20" w="1108" h="1020"/>
<node identifier="do-0074" elementRef="ac-ams-sync" xsi:type="Element" x="464" y="54" w="165" h="50"/>
<node identifier="do-0075" elementRef="ac-attachments" xsi:type="Element" x="644" y="54" w="165" h="50"/>
<node identifier="do-0076" elementRef="ac-auth-flow" xsi:type="Element" x="824" y="54" w="165" h="50"/>
<node identifier="do-0077" elementRef="ac-bim" xsi:type="Element" x="1004" y="54" w="165" h="50"/>
<node identifier="do-0078" elementRef="ac-cde" xsi:type="Element" x="1184" y="54" w="165" h="50"/>
<node identifier="do-0079" elementRef="ac-checklists" xsi:type="Element" x="1364" y="54" w="165" h="50"/>
<node identifier="do-0080" elementRef="ac-comparisons" xsi:type="Element" x="464" y="116" w="165" h="50"/>
<node identifier="do-0081" elementRef="ac-contracts" xsi:type="Element" x="644" y="116" w="165" h="50"/>
<node identifier="do-0082" elementRef="ac-control-interface" xsi:type="Element" x="824" y="116" w="165" h="50"/>
<node identifier="do-0083" elementRef="ac-cross-section" xsi:type="Element" x="1004" y="116" w="165" h="50"/>
<node identifier="do-0084" elementRef="ac-django" xsi:type="Element" x="1184" y="116" w="165" h="50"/>
<node identifier="do-0085" elementRef="ac-document-link" xsi:type="Element" x="1364" y="116" w="165" h="50"/>
<node identifier="do-0086" elementRef="ac-documentations" xsi:type="Element" x="464" y="178" w="165" h="50"/>
<node identifier="do-0087" elementRef="ac-drawings" xsi:type="Element" x="644" y="178" w="165" h="50"/>
<node identifier="do-0088" elementRef="ac-eav" xsi:type="Element" x="824" y="178" w="165" h="50"/>
<node identifier="do-0089" elementRef="ac-faas" xsi:type="Element" x="1004" y="178" w="165" h="50"/>
<node identifier="do-0090" elementRef="ac-flows" xsi:type="Element" x="1184" y="178" w="165" h="50"/>
<node identifier="do-0091" elementRef="ac-iam" xsi:type="Element" x="1364" y="178" w="165" h="50"/>
<node identifier="do-0092" elementRef="ac-inspections" xsi:type="Element" x="464" y="240" w="165" h="50"/>
<node identifier="do-0093" elementRef="ac-issues" xsi:type="Element" x="644" y="240" w="165" h="50"/>
<node identifier="do-0094" elementRef="ac-mapper" xsi:type="Element" x="824" y="240" w="165" h="50"/>
<node identifier="do-0095" elementRef="ac-measurements" xsi:type="Element" x="1004" y="240" w="165" h="50"/>
<node identifier="do-0096" elementRef="ac-message-hub" xsi:type="Element" x="1184" y="240" w="165" h="50"/>
<node identifier="do-0097" elementRef="ac-notes" xsi:type="Element" x="1364" y="240" w="165" h="50"/>
<node identifier="do-0098" elementRef="ac-pm" xsi:type="Element" x="464" y="302" w="165" h="50"/>
<node identifier="do-0099" elementRef="ac-prescriptions" xsi:type="Element" x="644" y="302" w="165" h="50"/>
<node identifier="do-0100" elementRef="ac-projects" xsi:type="Element" x="824" y="302" w="165" h="50"/>
<node identifier="do-0101" elementRef="ac-remarks" xsi:type="Element" x="1004" y="302" w="165" h="50"/>
<node identifier="do-0102" elementRef="ac-resources" xsi:type="Element" x="1184" y="302" w="165" h="50"/>
<node identifier="do-0103" elementRef="ac-reviews" xsi:type="Element" x="1364" y="302" w="165" h="50"/>
<node identifier="do-0104" elementRef="ac-rfi" xsi:type="Element" x="464" y="364" w="165" h="50"/>
<node identifier="do-0105" elementRef="ac-stamp-verification" xsi:type="Element" x="644" y="364" w="165" h="50"/>
<node identifier="do-0106" elementRef="ac-subscriptions" xsi:type="Element" x="824" y="364" w="165" h="50"/>
<node identifier="do-0107" elementRef="ac-system-log" xsi:type="Element" x="1004" y="364" w="165" h="50"/>
<node identifier="do-0108" elementRef="ac-transmittal" xsi:type="Element" x="1184" y="364" w="165" h="50"/>
<node identifier="do-0109" elementRef="ac-workspaces" xsi:type="Element" x="1364" y="364" w="165" h="50"/>
</view>
<view identifier="view-3" xsi:type="Diagram">
<name xml:lang="ru">A1. Ядро прикладного слоя</name>
<documentation xml:lang="ru">Восемь сервисов с наибольшим числом связей и вызовы между ними. Стрелка идёт от вызываемого к вызывающему (serving): кого лишишься — тот и сломается. Всего в контуре 86 межсервисных связей.</documentation>
<node identifier="do-0110" elementRef="ac-documentations" xsi:type="Element" x="425" y="20" w="170" h="55"/>
<node identifier="do-0111" elementRef="ac-django" xsi:type="Element" x="711" y="108" w="170" h="55"/>
<node identifier="do-0112" elementRef="ac-flows" xsi:type="Element" x="830" y="320" w="170" h="55"/>
<node identifier="do-0113" elementRef="ac-processing" xsi:type="Element" x="711" y="532" w="170" h="55"/>
<node identifier="do-0114" elementRef="ac-eav" xsi:type="Element" x="425" y="620" w="170" h="55"/>
<node identifier="do-0115" elementRef="ac-issues" xsi:type="Element" x="139" y="532" w="170" h="55"/>
<node identifier="do-0116" elementRef="ac-resources" xsi:type="Element" x="20" y="320" w="170" h="55"/>
<node identifier="do-0117" elementRef="ac-pm" xsi:type="Element" x="139" y="108" w="170" h="55"/>
<connection identifier="cn-0118" relationshipRef="rel-244" xsi:type="Relationship" source="do-0110" target="do-0111"/>
<connection identifier="cn-0127" relationshipRef="rel-271" xsi:type="Relationship" source="do-0110" target="do-0112"/>
<connection identifier="cn-0133" relationshipRef="rel-280" xsi:type="Relationship" source="do-0110" target="do-0115"/>
<connection identifier="cn-0142" relationshipRef="rel-300" xsi:type="Relationship" source="do-0110" target="do-0113"/>
<connection identifier="cn-0121" relationshipRef="rel-251" xsi:type="Relationship" source="do-0111" target="do-0110"/>
<connection identifier="cn-0126" relationshipRef="rel-270" xsi:type="Relationship" source="do-0111" target="do-0112"/>
<connection identifier="cn-0132" relationshipRef="rel-279" xsi:type="Relationship" source="do-0111" target="do-0115"/>
<connection identifier="cn-0138" relationshipRef="rel-295" xsi:type="Relationship" source="do-0111" target="do-0117"/>
<connection identifier="cn-0141" relationshipRef="rel-299" xsi:type="Relationship" source="do-0111" target="do-0113"/>
<connection identifier="cn-0144" relationshipRef="rel-303" xsi:type="Relationship" source="do-0111" target="do-0116"/>
<connection identifier="cn-0123" relationshipRef="rel-254" xsi:type="Relationship" source="do-0112" target="do-0110"/>
<connection identifier="cn-0135" relationshipRef="rel-282" xsi:type="Relationship" source="do-0112" target="do-0115"/>
<connection identifier="cn-0120" relationshipRef="rel-247" xsi:type="Relationship" source="do-0113" target="do-0111"/>
<connection identifier="cn-0124" relationshipRef="rel-258" xsi:type="Relationship" source="do-0113" target="do-0110"/>
<connection identifier="cn-0130" relationshipRef="rel-275" xsi:type="Relationship" source="do-0113" target="do-0112"/>
<connection identifier="cn-0136" relationshipRef="rel-284" xsi:type="Relationship" source="do-0113" target="do-0115"/>
<connection identifier="cn-0122" relationshipRef="rel-253" xsi:type="Relationship" source="do-0114" target="do-0110"/>
<connection identifier="cn-0128" relationshipRef="rel-272" xsi:type="Relationship" source="do-0114" target="do-0112"/>
<connection identifier="cn-0134" relationshipRef="rel-281" xsi:type="Relationship" source="do-0114" target="do-0115"/>
<connection identifier="cn-0139" relationshipRef="rel-296" xsi:type="Relationship" source="do-0114" target="do-0117"/>
<connection identifier="cn-0125" relationshipRef="rel-260" xsi:type="Relationship" source="do-0116" target="do-0110"/>
<connection identifier="cn-0131" relationshipRef="rel-276" xsi:type="Relationship" source="do-0116" target="do-0112"/>
<connection identifier="cn-0137" relationshipRef="rel-285" xsi:type="Relationship" source="do-0116" target="do-0115"/>
<connection identifier="cn-0140" relationshipRef="rel-298" xsi:type="Relationship" source="do-0116" target="do-0117"/>
<connection identifier="cn-0143" relationshipRef="rel-302" xsi:type="Relationship" source="do-0116" target="do-0113"/>
<connection identifier="cn-0119" relationshipRef="rel-246" xsi:type="Relationship" source="do-0117" target="do-0111"/>
<connection identifier="cn-0129" relationshipRef="rel-274" xsi:type="Relationship" source="do-0117" target="do-0112"/>
</view>
<view identifier="view-4" xsi:type="Diagram">
<name xml:lang="ru">A2. Зависят от: django</name>
<documentation xml:lang="ru">К django обращаются 18 сервисов.</documentation>
<node identifier="do-0145" elementRef="ac-django" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0146" elementRef="ac-bim" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0148" elementRef="ac-comparisons" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0150" elementRef="ac-documentations" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0152" elementRef="ac-faas" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0154" elementRef="ac-flows" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0156" elementRef="ac-issues" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0158" elementRef="ac-mapper" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0160" elementRef="ac-measurements" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0162" elementRef="ac-message-hub" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0164" elementRef="ac-notes" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0166" elementRef="ac-pm" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0168" elementRef="ac-processing" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0170" elementRef="ac-resources" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0172" elementRef="ac-rfi" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0174" elementRef="ac-subscriptions" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0176" elementRef="ac-system-log" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0178" elementRef="ac-transmittal" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<node identifier="do-0180" elementRef="ac-workspaces" xsi:type="Element" x="970" y="310" w="170" h="55"/>
<connection identifier="cn-0147" relationshipRef="rel-233" xsi:type="Relationship" source="do-0145" target="do-0146"/>
<connection identifier="cn-0149" relationshipRef="rel-238" xsi:type="Relationship" source="do-0145" target="do-0148"/>
<connection identifier="cn-0151" relationshipRef="rel-251" xsi:type="Relationship" source="do-0145" target="do-0150"/>
<connection identifier="cn-0153" relationshipRef="rel-264" xsi:type="Relationship" source="do-0145" target="do-0152"/>
<connection identifier="cn-0155" relationshipRef="rel-270" xsi:type="Relationship" source="do-0145" target="do-0154"/>
<connection identifier="cn-0157" relationshipRef="rel-279" xsi:type="Relationship" source="do-0145" target="do-0156"/>
<connection identifier="cn-0159" relationshipRef="rel-286" xsi:type="Relationship" source="do-0145" target="do-0158"/>
<connection identifier="cn-0161" relationshipRef="rel-287" xsi:type="Relationship" source="do-0145" target="do-0160"/>
<connection identifier="cn-0163" relationshipRef="rel-288" xsi:type="Relationship" source="do-0145" target="do-0162"/>
<connection identifier="cn-0165" relationshipRef="rel-293" xsi:type="Relationship" source="do-0145" target="do-0164"/>
<connection identifier="cn-0167" relationshipRef="rel-295" xsi:type="Relationship" source="do-0145" target="do-0166"/>
<connection identifier="cn-0169" relationshipRef="rel-299" xsi:type="Relationship" source="do-0145" target="do-0168"/>
<connection identifier="cn-0171" relationshipRef="rel-303" xsi:type="Relationship" source="do-0145" target="do-0170"/>
<connection identifier="cn-0173" relationshipRef="rel-304" xsi:type="Relationship" source="do-0145" target="do-0172"/>
<connection identifier="cn-0175" relationshipRef="rel-308" xsi:type="Relationship" source="do-0145" target="do-0174"/>
<connection identifier="cn-0177" relationshipRef="rel-310" xsi:type="Relationship" source="do-0145" target="do-0176"/>
<connection identifier="cn-0179" relationshipRef="rel-312" xsi:type="Relationship" source="do-0145" target="do-0178"/>
<connection identifier="cn-0181" relationshipRef="rel-317" xsi:type="Relationship" source="do-0145" target="do-0180"/>
</view>
<view identifier="view-5" xsi:type="Diagram">
<name xml:lang="ru">A3. Зависят от: documentations</name>
<documentation xml:lang="ru">К documentations обращаются 11 сервисов.</documentation>
<node identifier="do-0182" elementRef="ac-documentations" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0183" elementRef="ac-comparisons" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0185" elementRef="ac-django" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0187" elementRef="ac-faas" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0189" elementRef="ac-flows" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0191" elementRef="ac-issues" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0193" elementRef="ac-notes" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0195" elementRef="ac-processing" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0197" elementRef="ac-rfi" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0199" elementRef="ac-system-log" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0201" elementRef="ac-transmittal" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0203" elementRef="ac-workspaces" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<connection identifier="cn-0184" relationshipRef="rel-239" xsi:type="Relationship" source="do-0182" target="do-0183"/>
<connection identifier="cn-0186" relationshipRef="rel-244" xsi:type="Relationship" source="do-0182" target="do-0185"/>
<connection identifier="cn-0188" relationshipRef="rel-265" xsi:type="Relationship" source="do-0182" target="do-0187"/>
<connection identifier="cn-0190" relationshipRef="rel-271" xsi:type="Relationship" source="do-0182" target="do-0189"/>
<connection identifier="cn-0192" relationshipRef="rel-280" xsi:type="Relationship" source="do-0182" target="do-0191"/>
<connection identifier="cn-0194" relationshipRef="rel-294" xsi:type="Relationship" source="do-0182" target="do-0193"/>
<connection identifier="cn-0196" relationshipRef="rel-300" xsi:type="Relationship" source="do-0182" target="do-0195"/>
<connection identifier="cn-0198" relationshipRef="rel-305" xsi:type="Relationship" source="do-0182" target="do-0197"/>
<connection identifier="cn-0200" relationshipRef="rel-311" xsi:type="Relationship" source="do-0182" target="do-0199"/>
<connection identifier="cn-0202" relationshipRef="rel-313" xsi:type="Relationship" source="do-0182" target="do-0201"/>
<connection identifier="cn-0204" relationshipRef="rel-318" xsi:type="Relationship" source="do-0182" target="do-0203"/>
</view>
<view identifier="view-6" xsi:type="Diagram">
<name xml:lang="ru">A4. Зависят от: eav</name>
<documentation xml:lang="ru">К eav обращаются 9 сервисов.</documentation>
<node identifier="do-0205" elementRef="ac-eav" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0206" elementRef="ac-comparisons" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0208" elementRef="ac-documentations" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0210" elementRef="ac-faas" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0212" elementRef="ac-flows" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0214" elementRef="ac-inspections" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0216" elementRef="ac-issues" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0218" elementRef="ac-message-hub" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0220" elementRef="ac-pm" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0222" elementRef="ac-rfi" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<connection identifier="cn-0207" relationshipRef="rel-240" xsi:type="Relationship" source="do-0205" target="do-0206"/>
<connection identifier="cn-0209" relationshipRef="rel-253" xsi:type="Relationship" source="do-0205" target="do-0208"/>
<connection identifier="cn-0211" relationshipRef="rel-266" xsi:type="Relationship" source="do-0205" target="do-0210"/>
<connection identifier="cn-0213" relationshipRef="rel-272" xsi:type="Relationship" source="do-0205" target="do-0212"/>
<connection identifier="cn-0215" relationshipRef="rel-277" xsi:type="Relationship" source="do-0205" target="do-0214"/>
<connection identifier="cn-0217" relationshipRef="rel-281" xsi:type="Relationship" source="do-0205" target="do-0216"/>
<connection identifier="cn-0219" relationshipRef="rel-289" xsi:type="Relationship" source="do-0205" target="do-0218"/>
<connection identifier="cn-0221" relationshipRef="rel-296" xsi:type="Relationship" source="do-0205" target="do-0220"/>
<connection identifier="cn-0223" relationshipRef="rel-306" xsi:type="Relationship" source="do-0205" target="do-0222"/>
</view>
<view identifier="view-7" xsi:type="Diagram">
<name xml:lang="ru">A5. Зависят от: resources</name>
<documentation xml:lang="ru">К resources обращаются 7 сервисов.</documentation>
<node identifier="do-0224" elementRef="ac-resources" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0225" elementRef="ac-documentations" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0227" elementRef="ac-flows" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0229" elementRef="ac-issues" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0231" elementRef="ac-pm" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0233" elementRef="ac-processing" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0235" elementRef="ac-rfi" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0237" elementRef="ac-transmittal" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<connection identifier="cn-0226" relationshipRef="rel-260" xsi:type="Relationship" source="do-0224" target="do-0225"/>
<connection identifier="cn-0228" relationshipRef="rel-276" xsi:type="Relationship" source="do-0224" target="do-0227"/>
<connection identifier="cn-0230" relationshipRef="rel-285" xsi:type="Relationship" source="do-0224" target="do-0229"/>
<connection identifier="cn-0232" relationshipRef="rel-298" xsi:type="Relationship" source="do-0224" target="do-0231"/>
<connection identifier="cn-0234" relationshipRef="rel-302" xsi:type="Relationship" source="do-0224" target="do-0233"/>
<connection identifier="cn-0236" relationshipRef="rel-307" xsi:type="Relationship" source="do-0224" target="do-0235"/>
<connection identifier="cn-0238" relationshipRef="rel-316" xsi:type="Relationship" source="do-0224" target="do-0237"/>
</view>
<view identifier="view-8" xsi:type="Diagram">
<name xml:lang="ru">A6. Зависят от: processing</name>
<documentation xml:lang="ru">К processing обращаются 6 сервисов.</documentation>
<node identifier="do-0239" elementRef="ac-processing" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0240" elementRef="ac-comparisons" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0242" elementRef="ac-django" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0244" elementRef="ac-documentations" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0246" elementRef="ac-flows" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0248" elementRef="ac-inspections" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0250" elementRef="ac-issues" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<connection identifier="cn-0241" relationshipRef="rel-241" xsi:type="Relationship" source="do-0239" target="do-0240"/>
<connection identifier="cn-0243" relationshipRef="rel-247" xsi:type="Relationship" source="do-0239" target="do-0242"/>
<connection identifier="cn-0245" relationshipRef="rel-258" xsi:type="Relationship" source="do-0239" target="do-0244"/>
<connection identifier="cn-0247" relationshipRef="rel-275" xsi:type="Relationship" source="do-0239" target="do-0246"/>
<connection identifier="cn-0249" relationshipRef="rel-278" xsi:type="Relationship" source="do-0239" target="do-0248"/>
<connection identifier="cn-0251" relationshipRef="rel-284" xsi:type="Relationship" source="do-0239" target="do-0250"/>
</view>
<view identifier="view-9" xsi:type="Diagram">
<name xml:lang="ru">A7. Зависят от: iam</name>
<documentation xml:lang="ru">К iam обращаются 6 сервисов.</documentation>
<node identifier="do-0252" elementRef="ac-iam" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0253" elementRef="ac-documentations" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0255" elementRef="ac-flows" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0257" elementRef="ac-issues" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0259" elementRef="ac-pm" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0261" elementRef="ac-processing" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0263" elementRef="ac-transmittal" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<connection identifier="cn-0254" relationshipRef="rel-255" xsi:type="Relationship" source="do-0252" target="do-0253"/>
<connection identifier="cn-0256" relationshipRef="rel-273" xsi:type="Relationship" source="do-0252" target="do-0255"/>
<connection identifier="cn-0258" relationshipRef="rel-283" xsi:type="Relationship" source="do-0252" target="do-0257"/>
<connection identifier="cn-0260" relationshipRef="rel-297" xsi:type="Relationship" source="do-0252" target="do-0259"/>
<connection identifier="cn-0262" relationshipRef="rel-301" xsi:type="Relationship" source="do-0252" target="do-0261"/>
<connection identifier="cn-0264" relationshipRef="rel-315" xsi:type="Relationship" source="do-0252" target="do-0263"/>
</view>
<view identifier="view-10" xsi:type="Diagram">
<name xml:lang="ru">A8. Зависят от: flows</name>
<documentation xml:lang="ru">К flows обращаются 4 сервиса.</documentation>
<node identifier="do-0265" elementRef="ac-flows" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0266" elementRef="ac-cde" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0268" elementRef="ac-documentations" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0270" elementRef="ac-issues" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0272" elementRef="ac-transmittal" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<connection identifier="cn-0267" relationshipRef="rel-234" xsi:type="Relationship" source="do-0265" target="do-0266"/>
<connection identifier="cn-0269" relationshipRef="rel-254" xsi:type="Relationship" source="do-0265" target="do-0268"/>
<connection identifier="cn-0271" relationshipRef="rel-282" xsi:type="Relationship" source="do-0265" target="do-0270"/>
<connection identifier="cn-0273" relationshipRef="rel-314" xsi:type="Relationship" source="do-0265" target="do-0272"/>
</view>
<view identifier="view-11" xsi:type="Diagram">
<name xml:lang="ru">A9. Зависят от: workspaces</name>
<documentation xml:lang="ru">К workspaces обращаются 4 сервиса.</documentation>
<node identifier="do-0274" elementRef="ac-workspaces" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0275" elementRef="ac-cde" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0277" elementRef="ac-comparisons" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0279" elementRef="ac-django" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0281" elementRef="ac-documentations" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<connection identifier="cn-0276" relationshipRef="rel-236" xsi:type="Relationship" source="do-0274" target="do-0275"/>
<connection identifier="cn-0278" relationshipRef="rel-242" xsi:type="Relationship" source="do-0274" target="do-0277"/>
<connection identifier="cn-0280" relationshipRef="rel-248" xsi:type="Relationship" source="do-0274" target="do-0279"/>
<connection identifier="cn-0282" relationshipRef="rel-263" xsi:type="Relationship" source="do-0274" target="do-0281"/>
</view>
<view identifier="view-12" xsi:type="Diagram">
<name xml:lang="ru">A10. Зависят от: system-log</name>
<documentation xml:lang="ru">К system-log обращаются 3 сервиса.</documentation>
<node identifier="do-0283" elementRef="ac-system-log" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0284" elementRef="ac-cde" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0286" elementRef="ac-documentations" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0288" elementRef="ac-subscriptions" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<connection identifier="cn-0285" relationshipRef="rel-235" xsi:type="Relationship" source="do-0283" target="do-0284"/>
<connection identifier="cn-0287" relationshipRef="rel-262" xsi:type="Relationship" source="do-0283" target="do-0286"/>
<connection identifier="cn-0289" relationshipRef="rel-309" xsi:type="Relationship" source="do-0283" target="do-0288"/>
</view>
<view identifier="view-13" xsi:type="Diagram">
<name xml:lang="ru">A11. Зависят от: bim</name>
<documentation xml:lang="ru">К bim обращаются 3 сервиса.</documentation>
<node identifier="do-0290" elementRef="ac-bim" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0291" elementRef="ac-comparisons" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0293" elementRef="ac-django" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0295" elementRef="ac-documentations" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<connection identifier="cn-0292" relationshipRef="rel-237" xsi:type="Relationship" source="do-0290" target="do-0291"/>
<connection identifier="cn-0294" relationshipRef="rel-243" xsi:type="Relationship" source="do-0290" target="do-0293"/>
<connection identifier="cn-0296" relationshipRef="rel-250" xsi:type="Relationship" source="do-0290" target="do-0295"/>
</view>
<view identifier="view-14" xsi:type="Diagram">
<name xml:lang="ru">A12. Зависят от: pm</name>
<documentation xml:lang="ru">К pm обращаются 3 сервиса.</documentation>
<node identifier="do-0297" elementRef="ac-pm" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0298" elementRef="ac-django" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0300" elementRef="ac-flows" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0302" elementRef="ac-message-hub" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<connection identifier="cn-0299" relationshipRef="rel-246" xsi:type="Relationship" source="do-0297" target="do-0298"/>
<connection identifier="cn-0301" relationshipRef="rel-274" xsi:type="Relationship" source="do-0297" target="do-0300"/>
<connection identifier="cn-0303" relationshipRef="rel-291" xsi:type="Relationship" source="do-0297" target="do-0302"/>
</view>
<view identifier="view-15" xsi:type="Diagram">
<name xml:lang="ru">T15. Потребители: Маршрутизация HTTPS-трафика</name>
<documentation xml:lang="ru">Сервисом пользуется 21 из 37 приложений контура.</documentation>
<node identifier="do-0304" elementRef="ts-ingress" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0305" elementRef="ss-istio-gw" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0307" elementRef="ss-istio-mesh" xsi:type="Element" x="600" y="20" w="260" h="60"/>
<node identifier="do-0309" elementRef="ac-auth-flow" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0311" elementRef="ac-bim" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0313" elementRef="ac-cde" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0315" elementRef="ac-checklists" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0317" elementRef="ac-control-interface" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0319" elementRef="ac-django" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0321" elementRef="ac-document-link" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0323" elementRef="ac-documentations" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0325" elementRef="ac-eav" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0327" elementRef="ac-flows" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0329" elementRef="ac-iam" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0331" elementRef="ac-inspections" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0333" elementRef="ac-issues" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0335" elementRef="ac-pm" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0337" elementRef="ac-processing" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0339" elementRef="ac-remarks" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0341" elementRef="ac-reviews" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<node identifier="do-0343" elementRef="ac-rfi" xsi:type="Element" x="970" y="310" w="170" h="55"/>
<node identifier="do-0345" elementRef="ac-stamp-verification" xsi:type="Element" x="20" y="390" w="170" h="55"/>
<node identifier="do-0347" elementRef="ac-transmittal" xsi:type="Element" x="210" y="390" w="170" h="55"/>
<node identifier="do-0349" elementRef="ac-workspaces" xsi:type="Element" x="400" y="390" w="170" h="55"/>
<connection identifier="cn-0310" relationshipRef="rel-036" xsi:type="Relationship" source="do-0304" target="do-0309"/>
<connection identifier="cn-0312" relationshipRef="rel-037" xsi:type="Relationship" source="do-0304" target="do-0311"/>
<connection identifier="cn-0314" relationshipRef="rel-038" xsi:type="Relationship" source="do-0304" target="do-0313"/>
<connection identifier="cn-0316" relationshipRef="rel-039" xsi:type="Relationship" source="do-0304" target="do-0315"/>
<connection identifier="cn-0318" relationshipRef="rel-040" xsi:type="Relationship" source="do-0304" target="do-0317"/>
<connection identifier="cn-0320" relationshipRef="rel-041" xsi:type="Relationship" source="do-0304" target="do-0319"/>
<connection identifier="cn-0322" relationshipRef="rel-042" xsi:type="Relationship" source="do-0304" target="do-0321"/>
<connection identifier="cn-0324" relationshipRef="rel-043" xsi:type="Relationship" source="do-0304" target="do-0323"/>
<connection identifier="cn-0326" relationshipRef="rel-044" xsi:type="Relationship" source="do-0304" target="do-0325"/>
<connection identifier="cn-0328" relationshipRef="rel-045" xsi:type="Relationship" source="do-0304" target="do-0327"/>
<connection identifier="cn-0330" relationshipRef="rel-046" xsi:type="Relationship" source="do-0304" target="do-0329"/>
<connection identifier="cn-0332" relationshipRef="rel-047" xsi:type="Relationship" source="do-0304" target="do-0331"/>
<connection identifier="cn-0334" relationshipRef="rel-048" xsi:type="Relationship" source="do-0304" target="do-0333"/>
<connection identifier="cn-0336" relationshipRef="rel-049" xsi:type="Relationship" source="do-0304" target="do-0335"/>
<connection identifier="cn-0338" relationshipRef="rel-050" xsi:type="Relationship" source="do-0304" target="do-0337"/>
<connection identifier="cn-0340" relationshipRef="rel-051" xsi:type="Relationship" source="do-0304" target="do-0339"/>
<connection identifier="cn-0342" relationshipRef="rel-052" xsi:type="Relationship" source="do-0304" target="do-0341"/>
<connection identifier="cn-0344" relationshipRef="rel-053" xsi:type="Relationship" source="do-0304" target="do-0343"/>
<connection identifier="cn-0346" relationshipRef="rel-054" xsi:type="Relationship" source="do-0304" target="do-0345"/>
<connection identifier="cn-0348" relationshipRef="rel-055" xsi:type="Relationship" source="do-0304" target="do-0347"/>
<connection identifier="cn-0350" relationshipRef="rel-056" xsi:type="Relationship" source="do-0304" target="do-0349"/>
<connection identifier="cn-0306" relationshipRef="rel-024" xsi:type="Relationship" source="do-0305" target="do-0304"/>
<connection identifier="cn-0308" relationshipRef="rel-025" xsi:type="Relationship" source="do-0307" target="do-0304"/>
</view>
<view identifier="view-16" xsi:type="Diagram">
<name xml:lang="ru">T16. Потребители: Аутентификация OIDC</name>
<documentation xml:lang="ru">Сервисом пользуются 25 из 37 приложений контура.</documentation>
<node identifier="do-0351" elementRef="ts-oidc" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0352" elementRef="ss-zitadel" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0354" elementRef="ac-ams-sync" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0356" elementRef="ac-auth-flow" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0358" elementRef="ac-checklists" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0360" elementRef="ac-comparisons" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0362" elementRef="ac-contracts" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0364" elementRef="ac-control-interface" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0366" elementRef="ac-cross-section" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0368" elementRef="ac-django" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0370" elementRef="ac-documentations" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0372" elementRef="ac-eav" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0374" elementRef="ac-flows" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0376" elementRef="ac-iam" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0378" elementRef="ac-inspections" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0380" elementRef="ac-issues" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0382" elementRef="ac-mapper" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0384" elementRef="ac-notes" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0386" elementRef="ac-pm" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<node identifier="do-0388" elementRef="ac-prescriptions" xsi:type="Element" x="970" y="310" w="170" h="55"/>
<node identifier="do-0390" elementRef="ac-processing" xsi:type="Element" x="20" y="390" w="170" h="55"/>
<node identifier="do-0392" elementRef="ac-projects" xsi:type="Element" x="210" y="390" w="170" h="55"/>
<node identifier="do-0394" elementRef="ac-remarks" xsi:type="Element" x="400" y="390" w="170" h="55"/>
<node identifier="do-0396" elementRef="ac-reviews" xsi:type="Element" x="590" y="390" w="170" h="55"/>
<node identifier="do-0398" elementRef="ac-rfi" xsi:type="Element" x="780" y="390" w="170" h="55"/>
<node identifier="do-0400" elementRef="ac-transmittal" xsi:type="Element" x="970" y="390" w="170" h="55"/>
<node identifier="do-0402" elementRef="ac-workspaces" xsi:type="Element" x="20" y="470" w="170" h="55"/>
<connection identifier="cn-0355" relationshipRef="rel-057" xsi:type="Relationship" source="do-0351" target="do-0354"/>
<connection identifier="cn-0357" relationshipRef="rel-058" xsi:type="Relationship" source="do-0351" target="do-0356"/>
<connection identifier="cn-0359" relationshipRef="rel-059" xsi:type="Relationship" source="do-0351" target="do-0358"/>
<connection identifier="cn-0361" relationshipRef="rel-060" xsi:type="Relationship" source="do-0351" target="do-0360"/>
<connection identifier="cn-0363" relationshipRef="rel-061" xsi:type="Relationship" source="do-0351" target="do-0362"/>
<connection identifier="cn-0365" relationshipRef="rel-062" xsi:type="Relationship" source="do-0351" target="do-0364"/>
<connection identifier="cn-0367" relationshipRef="rel-063" xsi:type="Relationship" source="do-0351" target="do-0366"/>
<connection identifier="cn-0369" relationshipRef="rel-064" xsi:type="Relationship" source="do-0351" target="do-0368"/>
<connection identifier="cn-0371" relationshipRef="rel-065" xsi:type="Relationship" source="do-0351" target="do-0370"/>
<connection identifier="cn-0373" relationshipRef="rel-066" xsi:type="Relationship" source="do-0351" target="do-0372"/>
<connection identifier="cn-0375" relationshipRef="rel-067" xsi:type="Relationship" source="do-0351" target="do-0374"/>
<connection identifier="cn-0377" relationshipRef="rel-068" xsi:type="Relationship" source="do-0351" target="do-0376"/>
<connection identifier="cn-0379" relationshipRef="rel-069" xsi:type="Relationship" source="do-0351" target="do-0378"/>
<connection identifier="cn-0381" relationshipRef="rel-070" xsi:type="Relationship" source="do-0351" target="do-0380"/>
<connection identifier="cn-0383" relationshipRef="rel-071" xsi:type="Relationship" source="do-0351" target="do-0382"/>
<connection identifier="cn-0385" relationshipRef="rel-072" xsi:type="Relationship" source="do-0351" target="do-0384"/>
<connection identifier="cn-0387" relationshipRef="rel-073" xsi:type="Relationship" source="do-0351" target="do-0386"/>
<connection identifier="cn-0389" relationshipRef="rel-074" xsi:type="Relationship" source="do-0351" target="do-0388"/>
<connection identifier="cn-0391" relationshipRef="rel-075" xsi:type="Relationship" source="do-0351" target="do-0390"/>
<connection identifier="cn-0393" relationshipRef="rel-076" xsi:type="Relationship" source="do-0351" target="do-0392"/>
<connection identifier="cn-0395" relationshipRef="rel-077" xsi:type="Relationship" source="do-0351" target="do-0394"/>
<connection identifier="cn-0397" relationshipRef="rel-078" xsi:type="Relationship" source="do-0351" target="do-0396"/>
<connection identifier="cn-0399" relationshipRef="rel-079" xsi:type="Relationship" source="do-0351" target="do-0398"/>
<connection identifier="cn-0401" relationshipRef="rel-080" xsi:type="Relationship" source="do-0351" target="do-0400"/>
<connection identifier="cn-0403" relationshipRef="rel-081" xsi:type="Relationship" source="do-0351" target="do-0402"/>
<connection identifier="cn-0353" relationshipRef="rel-028" xsi:type="Relationship" source="do-0352" target="do-0351"/>
</view>
<view identifier="view-17" xsi:type="Diagram">
<name xml:lang="ru">T17. Потребители: Управление секретами</name>
<documentation xml:lang="ru">Сервисом пользуются 26 из 37 приложений контура.</documentation>
<node identifier="do-0404" elementRef="ts-secrets" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0405" elementRef="ss-vault" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0407" elementRef="ac-attachments" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0409" elementRef="ac-bim" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0411" elementRef="ac-cde" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0413" elementRef="ac-checklists" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0415" elementRef="ac-comparisons" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0417" elementRef="ac-contracts" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0419" elementRef="ac-django" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0421" elementRef="ac-documentations" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0423" elementRef="ac-drawings" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0425" elementRef="ac-eav" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0427" elementRef="ac-flows" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0429" elementRef="ac-iam" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0431" elementRef="ac-inspections" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0433" elementRef="ac-issues" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0435" elementRef="ac-mapper" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0437" elementRef="ac-measurements" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0439" elementRef="ac-message-hub" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<node identifier="do-0441" elementRef="ac-notes" xsi:type="Element" x="970" y="310" w="170" h="55"/>
<node identifier="do-0443" elementRef="ac-pm" xsi:type="Element" x="20" y="390" w="170" h="55"/>
<node identifier="do-0445" elementRef="ac-processing" xsi:type="Element" x="210" y="390" w="170" h="55"/>
<node identifier="do-0447" elementRef="ac-resources" xsi:type="Element" x="400" y="390" w="170" h="55"/>
<node identifier="do-0449" elementRef="ac-rfi" xsi:type="Element" x="590" y="390" w="170" h="55"/>
<node identifier="do-0451" elementRef="ac-subscriptions" xsi:type="Element" x="780" y="390" w="170" h="55"/>
<node identifier="do-0453" elementRef="ac-system-log" xsi:type="Element" x="970" y="390" w="170" h="55"/>
<node identifier="do-0455" elementRef="ac-transmittal" xsi:type="Element" x="20" y="470" w="170" h="55"/>
<node identifier="do-0457" elementRef="ac-workspaces" xsi:type="Element" x="210" y="470" w="170" h="55"/>
<connection identifier="cn-0408" relationshipRef="rel-082" xsi:type="Relationship" source="do-0404" target="do-0407"/>
<connection identifier="cn-0410" relationshipRef="rel-083" xsi:type="Relationship" source="do-0404" target="do-0409"/>
<connection identifier="cn-0412" relationshipRef="rel-084" xsi:type="Relationship" source="do-0404" target="do-0411"/>
<connection identifier="cn-0414" relationshipRef="rel-085" xsi:type="Relationship" source="do-0404" target="do-0413"/>
<connection identifier="cn-0416" relationshipRef="rel-086" xsi:type="Relationship" source="do-0404" target="do-0415"/>
<connection identifier="cn-0418" relationshipRef="rel-087" xsi:type="Relationship" source="do-0404" target="do-0417"/>
<connection identifier="cn-0420" relationshipRef="rel-088" xsi:type="Relationship" source="do-0404" target="do-0419"/>
<connection identifier="cn-0422" relationshipRef="rel-089" xsi:type="Relationship" source="do-0404" target="do-0421"/>
<connection identifier="cn-0424" relationshipRef="rel-090" xsi:type="Relationship" source="do-0404" target="do-0423"/>
<connection identifier="cn-0426" relationshipRef="rel-091" xsi:type="Relationship" source="do-0404" target="do-0425"/>
<connection identifier="cn-0428" relationshipRef="rel-092" xsi:type="Relationship" source="do-0404" target="do-0427"/>
<connection identifier="cn-0430" relationshipRef="rel-093" xsi:type="Relationship" source="do-0404" target="do-0429"/>
<connection identifier="cn-0432" relationshipRef="rel-094" xsi:type="Relationship" source="do-0404" target="do-0431"/>
<connection identifier="cn-0434" relationshipRef="rel-095" xsi:type="Relationship" source="do-0404" target="do-0433"/>
<connection identifier="cn-0436" relationshipRef="rel-096" xsi:type="Relationship" source="do-0404" target="do-0435"/>
<connection identifier="cn-0438" relationshipRef="rel-097" xsi:type="Relationship" source="do-0404" target="do-0437"/>
<connection identifier="cn-0440" relationshipRef="rel-098" xsi:type="Relationship" source="do-0404" target="do-0439"/>
<connection identifier="cn-0442" relationshipRef="rel-099" xsi:type="Relationship" source="do-0404" target="do-0441"/>
<connection identifier="cn-0444" relationshipRef="rel-100" xsi:type="Relationship" source="do-0404" target="do-0443"/>
<connection identifier="cn-0446" relationshipRef="rel-101" xsi:type="Relationship" source="do-0404" target="do-0445"/>
<connection identifier="cn-0448" relationshipRef="rel-102" xsi:type="Relationship" source="do-0404" target="do-0447"/>
<connection identifier="cn-0450" relationshipRef="rel-103" xsi:type="Relationship" source="do-0404" target="do-0449"/>
<connection identifier="cn-0452" relationshipRef="rel-104" xsi:type="Relationship" source="do-0404" target="do-0451"/>
<connection identifier="cn-0454" relationshipRef="rel-105" xsi:type="Relationship" source="do-0404" target="do-0453"/>
<connection identifier="cn-0456" relationshipRef="rel-106" xsi:type="Relationship" source="do-0404" target="do-0455"/>
<connection identifier="cn-0458" relationshipRef="rel-107" xsi:type="Relationship" source="do-0404" target="do-0457"/>
<connection identifier="cn-0406" relationshipRef="rel-029" xsi:type="Relationship" source="do-0405" target="do-0404"/>
</view>
<view identifier="view-18" xsi:type="Diagram">
<name xml:lang="ru">T18. Потребители: Реляционное хранилище</name>
<documentation xml:lang="ru">Сервисом пользуются 24 из 37 приложений контура.</documentation>
<node identifier="do-0459" elementRef="ts-rdbms" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0460" elementRef="ss-postgres" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0462" elementRef="ac-attachments" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0464" elementRef="ac-bim" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0466" elementRef="ac-checklists" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0468" elementRef="ac-comparisons" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0470" elementRef="ac-contracts" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0472" elementRef="ac-django" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0474" elementRef="ac-documentations" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0476" elementRef="ac-drawings" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0478" elementRef="ac-eav" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0480" elementRef="ac-flows" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0482" elementRef="ac-iam" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0484" elementRef="ac-inspections" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0486" elementRef="ac-issues" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0488" elementRef="ac-mapper" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0490" elementRef="ac-message-hub" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0492" elementRef="ac-notes" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0494" elementRef="ac-pm" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<node identifier="do-0496" elementRef="ac-processing" xsi:type="Element" x="970" y="310" w="170" h="55"/>
<node identifier="do-0498" elementRef="ac-resources" xsi:type="Element" x="20" y="390" w="170" h="55"/>
<node identifier="do-0500" elementRef="ac-rfi" xsi:type="Element" x="210" y="390" w="170" h="55"/>
<node identifier="do-0502" elementRef="ac-subscriptions" xsi:type="Element" x="400" y="390" w="170" h="55"/>
<node identifier="do-0504" elementRef="ac-system-log" xsi:type="Element" x="590" y="390" w="170" h="55"/>
<node identifier="do-0506" elementRef="ac-transmittal" xsi:type="Element" x="780" y="390" w="170" h="55"/>
<node identifier="do-0508" elementRef="ac-workspaces" xsi:type="Element" x="970" y="390" w="170" h="55"/>
<connection identifier="cn-0463" relationshipRef="rel-108" xsi:type="Relationship" source="do-0459" target="do-0462"/>
<connection identifier="cn-0465" relationshipRef="rel-109" xsi:type="Relationship" source="do-0459" target="do-0464"/>
<connection identifier="cn-0467" relationshipRef="rel-110" xsi:type="Relationship" source="do-0459" target="do-0466"/>
<connection identifier="cn-0469" relationshipRef="rel-111" xsi:type="Relationship" source="do-0459" target="do-0468"/>
<connection identifier="cn-0471" relationshipRef="rel-112" xsi:type="Relationship" source="do-0459" target="do-0470"/>
<connection identifier="cn-0473" relationshipRef="rel-113" xsi:type="Relationship" source="do-0459" target="do-0472"/>
<connection identifier="cn-0475" relationshipRef="rel-114" xsi:type="Relationship" source="do-0459" target="do-0474"/>
<connection identifier="cn-0477" relationshipRef="rel-115" xsi:type="Relationship" source="do-0459" target="do-0476"/>
<connection identifier="cn-0479" relationshipRef="rel-116" xsi:type="Relationship" source="do-0459" target="do-0478"/>
<connection identifier="cn-0481" relationshipRef="rel-117" xsi:type="Relationship" source="do-0459" target="do-0480"/>
<connection identifier="cn-0483" relationshipRef="rel-118" xsi:type="Relationship" source="do-0459" target="do-0482"/>
<connection identifier="cn-0485" relationshipRef="rel-119" xsi:type="Relationship" source="do-0459" target="do-0484"/>
<connection identifier="cn-0487" relationshipRef="rel-120" xsi:type="Relationship" source="do-0459" target="do-0486"/>
<connection identifier="cn-0489" relationshipRef="rel-121" xsi:type="Relationship" source="do-0459" target="do-0488"/>
<connection identifier="cn-0491" relationshipRef="rel-122" xsi:type="Relationship" source="do-0459" target="do-0490"/>
<connection identifier="cn-0493" relationshipRef="rel-123" xsi:type="Relationship" source="do-0459" target="do-0492"/>
<connection identifier="cn-0495" relationshipRef="rel-124" xsi:type="Relationship" source="do-0459" target="do-0494"/>
<connection identifier="cn-0497" relationshipRef="rel-125" xsi:type="Relationship" source="do-0459" target="do-0496"/>
<connection identifier="cn-0499" relationshipRef="rel-126" xsi:type="Relationship" source="do-0459" target="do-0498"/>
<connection identifier="cn-0501" relationshipRef="rel-127" xsi:type="Relationship" source="do-0459" target="do-0500"/>
<connection identifier="cn-0503" relationshipRef="rel-128" xsi:type="Relationship" source="do-0459" target="do-0502"/>
<connection identifier="cn-0505" relationshipRef="rel-129" xsi:type="Relationship" source="do-0459" target="do-0504"/>
<connection identifier="cn-0507" relationshipRef="rel-130" xsi:type="Relationship" source="do-0459" target="do-0506"/>
<connection identifier="cn-0509" relationshipRef="rel-131" xsi:type="Relationship" source="do-0459" target="do-0508"/>
<connection identifier="cn-0461" relationshipRef="rel-030" xsi:type="Relationship" source="do-0460" target="do-0459"/>
</view>
<view identifier="view-19" xsi:type="Diagram">
<name xml:lang="ru">T19. Потребители: Кэш</name>
<documentation xml:lang="ru">Сервисом пользуются 5 из 37 приложений контура.</documentation>
<node identifier="do-0510" elementRef="ts-cache" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0511" elementRef="ss-redis" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0513" elementRef="ac-django" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0515" elementRef="ac-issues" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0517" elementRef="ac-mapper" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0519" elementRef="ac-message-hub" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0521" elementRef="ac-pm" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<connection identifier="cn-0514" relationshipRef="rel-132" xsi:type="Relationship" source="do-0510" target="do-0513"/>
<connection identifier="cn-0516" relationshipRef="rel-133" xsi:type="Relationship" source="do-0510" target="do-0515"/>
<connection identifier="cn-0518" relationshipRef="rel-134" xsi:type="Relationship" source="do-0510" target="do-0517"/>
<connection identifier="cn-0520" relationshipRef="rel-135" xsi:type="Relationship" source="do-0510" target="do-0519"/>
<connection identifier="cn-0522" relationshipRef="rel-136" xsi:type="Relationship" source="do-0510" target="do-0521"/>
<connection identifier="cn-0512" relationshipRef="rel-031" xsi:type="Relationship" source="do-0511" target="do-0510"/>
</view>
<view identifier="view-20" xsi:type="Diagram">
<name xml:lang="ru">T20. Потребители: Событийная шина</name>
<documentation xml:lang="ru">Сервисом пользуются 14 из 37 приложений контура.</documentation>
<node identifier="do-0523" elementRef="ts-events" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0524" elementRef="ss-kafka" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0526" elementRef="ac-ams-sync" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0528" elementRef="ac-contracts" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0530" elementRef="ac-django" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0532" elementRef="ac-documentations" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0534" elementRef="ac-eav" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0536" elementRef="ac-flows" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0538" elementRef="ac-iam" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0540" elementRef="ac-inspections" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0542" elementRef="ac-issues" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0544" elementRef="ac-mapper" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0546" elementRef="ac-message-hub" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0548" elementRef="ac-notes" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0550" elementRef="ac-pm" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0552" elementRef="ac-system-log" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<connection identifier="cn-0527" relationshipRef="rel-137" xsi:type="Relationship" source="do-0523" target="do-0526"/>
<connection identifier="cn-0529" relationshipRef="rel-138" xsi:type="Relationship" source="do-0523" target="do-0528"/>
<connection identifier="cn-0531" relationshipRef="rel-139" xsi:type="Relationship" source="do-0523" target="do-0530"/>
<connection identifier="cn-0533" relationshipRef="rel-140" xsi:type="Relationship" source="do-0523" target="do-0532"/>
<connection identifier="cn-0535" relationshipRef="rel-141" xsi:type="Relationship" source="do-0523" target="do-0534"/>
<connection identifier="cn-0537" relationshipRef="rel-142" xsi:type="Relationship" source="do-0523" target="do-0536"/>
<connection identifier="cn-0539" relationshipRef="rel-143" xsi:type="Relationship" source="do-0523" target="do-0538"/>
<connection identifier="cn-0541" relationshipRef="rel-144" xsi:type="Relationship" source="do-0523" target="do-0540"/>
<connection identifier="cn-0543" relationshipRef="rel-145" xsi:type="Relationship" source="do-0523" target="do-0542"/>
<connection identifier="cn-0545" relationshipRef="rel-146" xsi:type="Relationship" source="do-0523" target="do-0544"/>
<connection identifier="cn-0547" relationshipRef="rel-147" xsi:type="Relationship" source="do-0523" target="do-0546"/>
<connection identifier="cn-0549" relationshipRef="rel-148" xsi:type="Relationship" source="do-0523" target="do-0548"/>
<connection identifier="cn-0551" relationshipRef="rel-149" xsi:type="Relationship" source="do-0523" target="do-0550"/>
<connection identifier="cn-0553" relationshipRef="rel-150" xsi:type="Relationship" source="do-0523" target="do-0552"/>
<connection identifier="cn-0525" relationshipRef="rel-032" xsi:type="Relationship" source="do-0524" target="do-0523"/>
</view>
<view identifier="view-21" xsi:type="Diagram">
<name xml:lang="ru">T21. Потребители: Очередь сообщений AMQP</name>
<documentation xml:lang="ru">Сервисом пользуются 12 из 37 приложений контура.</documentation>
<node identifier="do-0554" elementRef="ts-amqp" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0555" elementRef="ss-rabbit" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0557" elementRef="ac-cde" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0559" elementRef="ac-contracts" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0561" elementRef="ac-django" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0563" elementRef="ac-documentations" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0565" elementRef="ac-flows" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0567" elementRef="ac-issues" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0569" elementRef="ac-mapper" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0571" elementRef="ac-notes" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0573" elementRef="ac-pm" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0575" elementRef="ac-processing" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0577" elementRef="ac-rfi" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0579" elementRef="ac-transmittal" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0581" elementRef="ac-bim-converter" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<connection identifier="cn-0558" relationshipRef="rel-151" xsi:type="Relationship" source="do-0554" target="do-0557"/>
<connection identifier="cn-0560" relationshipRef="rel-152" xsi:type="Relationship" source="do-0554" target="do-0559"/>
<connection identifier="cn-0562" relationshipRef="rel-153" xsi:type="Relationship" source="do-0554" target="do-0561"/>
<connection identifier="cn-0564" relationshipRef="rel-154" xsi:type="Relationship" source="do-0554" target="do-0563"/>
<connection identifier="cn-0566" relationshipRef="rel-155" xsi:type="Relationship" source="do-0554" target="do-0565"/>
<connection identifier="cn-0568" relationshipRef="rel-156" xsi:type="Relationship" source="do-0554" target="do-0567"/>
<connection identifier="cn-0570" relationshipRef="rel-157" xsi:type="Relationship" source="do-0554" target="do-0569"/>
<connection identifier="cn-0572" relationshipRef="rel-158" xsi:type="Relationship" source="do-0554" target="do-0571"/>
<connection identifier="cn-0574" relationshipRef="rel-159" xsi:type="Relationship" source="do-0554" target="do-0573"/>
<connection identifier="cn-0576" relationshipRef="rel-160" xsi:type="Relationship" source="do-0554" target="do-0575"/>
<connection identifier="cn-0578" relationshipRef="rel-161" xsi:type="Relationship" source="do-0554" target="do-0577"/>
<connection identifier="cn-0580" relationshipRef="rel-162" xsi:type="Relationship" source="do-0554" target="do-0579"/>
<connection identifier="cn-0582" relationshipRef="rel-231" xsi:type="Relationship" source="do-0554" target="do-0581"/>
<connection identifier="cn-0556" relationshipRef="rel-033" xsi:type="Relationship" source="do-0555" target="do-0554"/>
</view>
<view identifier="view-22" xsi:type="Diagram">
<name xml:lang="ru">T22. Потребители: Оркестрация процессов BPMN</name>
<documentation xml:lang="ru">Сервисом пользуется 1 из 37 приложений контура.</documentation>
<node identifier="do-0583" elementRef="ts-bpmn" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0584" elementRef="ss-camunda" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0586" elementRef="ac-cde" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<connection identifier="cn-0587" relationshipRef="rel-163" xsi:type="Relationship" source="do-0583" target="do-0586"/>
<connection identifier="cn-0585" relationshipRef="rel-034" xsi:type="Relationship" source="do-0584" target="do-0583"/>
</view>
<view identifier="view-23" xsi:type="Diagram">
<name xml:lang="ru">T23. Потребители: Объектное хранилище</name>
<documentation xml:lang="ru">Сервисом пользуются 16 из 37 приложений контура.</documentation>
<node identifier="do-0588" elementRef="ts-object" xsi:type="Element" x="20" y="20" w="260" h="60"/>
<node identifier="do-0589" elementRef="nd-s3" xsi:type="Element" x="320" y="20" w="260" h="60"/>
<node identifier="do-0591" elementRef="ac-attachments" xsi:type="Element" x="20" y="150" w="170" h="55"/>
<node identifier="do-0593" elementRef="ac-cde" xsi:type="Element" x="210" y="150" w="170" h="55"/>
<node identifier="do-0595" elementRef="ac-contracts" xsi:type="Element" x="400" y="150" w="170" h="55"/>
<node identifier="do-0597" elementRef="ac-django" xsi:type="Element" x="590" y="150" w="170" h="55"/>
<node identifier="do-0599" elementRef="ac-documentations" xsi:type="Element" x="780" y="150" w="170" h="55"/>
<node identifier="do-0601" elementRef="ac-eav" xsi:type="Element" x="970" y="150" w="170" h="55"/>
<node identifier="do-0603" elementRef="ac-iam" xsi:type="Element" x="20" y="230" w="170" h="55"/>
<node identifier="do-0605" elementRef="ac-issues" xsi:type="Element" x="210" y="230" w="170" h="55"/>
<node identifier="do-0607" elementRef="ac-mapper" xsi:type="Element" x="400" y="230" w="170" h="55"/>
<node identifier="do-0609" elementRef="ac-measurements" xsi:type="Element" x="590" y="230" w="170" h="55"/>
<node identifier="do-0611" elementRef="ac-message-hub" xsi:type="Element" x="780" y="230" w="170" h="55"/>
<node identifier="do-0613" elementRef="ac-notes" xsi:type="Element" x="970" y="230" w="170" h="55"/>
<node identifier="do-0615" elementRef="ac-pm" xsi:type="Element" x="20" y="310" w="170" h="55"/>
<node identifier="do-0617" elementRef="ac-resources" xsi:type="Element" x="210" y="310" w="170" h="55"/>
<node identifier="do-0619" elementRef="ac-rfi" xsi:type="Element" x="400" y="310" w="170" h="55"/>
<node identifier="do-0621" elementRef="ac-subscriptions" xsi:type="Element" x="590" y="310" w="170" h="55"/>
<node identifier="do-0623" elementRef="ac-bim-converter" xsi:type="Element" x="780" y="310" w="170" h="55"/>
<connection identifier="cn-0592" relationshipRef="rel-164" xsi:type="Relationship" source="do-0588" target="do-0591"/>
<connection identifier="cn-0594" relationshipRef="rel-165" xsi:type="Relationship" source="do-0588" target="do-0593"/>
<connection identifier="cn-0596" relationshipRef="rel-166" xsi:type="Relationship" source="do-0588" target="do-0595"/>
<connection identifier="cn-0598" relationshipRef="rel-167" xsi:type="Relationship" source="do-0588" target="do-0597"/>
<connection identifier="cn-0600" relationshipRef="rel-168" xsi:type="Relationship" source="do-0588" target="do-0599"/>
<connection identifier="cn-0602" relationshipRef="rel-169" xsi:type="Relationship" source="do-0588" target="do-0601"/>
<connection identifier="cn-0604" relationshipRef="rel-170" xsi:type="Relationship" source="do-0588" target="do-0603"/>
<connection identifier="cn-0606" relationshipRef="rel-171" xsi:type="Relationship" source="do-0588" target="do-0605"/>
<connection identifier="cn-0608" relationshipRef="rel-172" xsi:type="Relationship" source="do-0588" target="do-0607"/>
<connection identifier="cn-0610" relationshipRef="rel-173" xsi:type="Relationship" source="do-0588" target="do-0609"/>
<connection identifier="cn-0612" relationshipRef="rel-174" xsi:type="Relationship" source="do-0588" target="do-0611"/>
<connection identifier="cn-0614" relationshipRef="rel-175" xsi:type="Relationship" source="do-0588" target="do-0613"/>
<connection identifier="cn-0616" relationshipRef="rel-176" xsi:type="Relationship" source="do-0588" target="do-0615"/>
<connection identifier="cn-0618" relationshipRef="rel-177" xsi:type="Relationship" source="do-0588" target="do-0617"/>
<connection identifier="cn-0620" relationshipRef="rel-178" xsi:type="Relationship" source="do-0588" target="do-0619"/>
<connection identifier="cn-0622" relationshipRef="rel-179" xsi:type="Relationship" source="do-0588" target="do-0621"/>
<connection identifier="cn-0624" relationshipRef="rel-232" xsi:type="Relationship" source="do-0588" target="do-0623"/>
<connection identifier="cn-0590" relationshipRef="rel-035" xsi:type="Relationship" source="do-0589" target="do-0588"/>
</view>
</diagrams>
</views>
</model>