Автор статьи: Максим Рогоза
Корпоративный архитектор
Язык ArchiMate - мощный инструмент, который позволяет моделировать и описывать сложные архитектуры предприятия. В основе этого языка лежат элементы и их взаимосвязи, которые помогают создать цельную картину организации и ее процессов. Однако, чтобы полностью понять и мастерски использовать ArchiMate, необходимо обратить внимание на ключевой аспект - коннекторы.
Коннекторы являются основными строительными блоками, которые обеспечивают связь и взаимодействие между элементами модели. Они позволяют передавать информацию о зависимостях, отношениях и потоках данных, что существенно обогащает смысл модели и раскрывает взаимосвязи, иногда незаметные на первый взгляд.
Если вы захотите научиться говорить на иностранном языке, кроме запоминания слов и фраз, непременно столкнетесь с изучением грамматики. Грамматика является фундаментом, на котором строится язык, и без понимания ее правил мы не сможем правильно формулировать и передавать свои мысли. Подобно этому, изучение коннекторов в ArchiMate является ключевым к пониманию и успешному моделированию.
В данной статье мы сосредоточимся на значении изучения коннекторов в языке ArchiMate и раскроем, как их понимание открывает новые горизонты в моделировании, а также обсудим преимущества, которые получает архитектор, обладая навыками работы с коннекторами.
Рассмотрим схему
Человеку хотя бы отдаленно знакомому с UML будут в целом понятны компоненты, изображенные на диаграмме, и даже скорее всего будет понятен общий смысл, но вот разобраться досконально с тем алгоритмом, который изображен на схеме увы не получится. В отличии от компонентов, которые интуитивно понятны, коннекторы ArchiMate нужно запоминать, и также нужно запоминать их свойства и правила применений, для того, чтобы понимать смысл, заложенный в диаграмму. К счастью, коннекторов в ArchiMate не много, всего 12 штук. И запомнить их не так уж и сложно. Давайте попробуем рассмотреть самые основные:
А теперь рассмотрим первоначальную схему еще раз и попробуем ее прочитать, используя наши знания о коннекторах, почерпнутые из таблицы выше:
Клиент вводит номер заказа в Кэш терминале, который через API «проверка заказа» отправляется в ERP. В ответ API возвращает признак «заказ не найден» или карточку заказа. Если заказ не найден, то терминал просит ввести заказ повторно, если в карточке заказа есть признак «проблемы при оформлении заказа», то терминал выводит информацию об этом и завершает обслуживание.
Если все в порядке, то терминал отображает сумму заказа и переходит в режим приема оплаты. После оплаты терминал отправляет в API платежный интерфейс номер заказа и сумму оплаты для формирования чека. В случае удачной фискализации, терминал печатает чек, проставляет в заказе признак оплаты и передает информацию через API «Получение информации об оплате» в ERP.
В случае проблем с фискализацией, терминал печатает аварийный чек и завершает обслуживание. Также передает информацию об ошибке в ERP через API «Получение информации об ошибке».
Как видите, изучение коннекторов является ключевым элементом для полноценного понимания языка ArchiMate а также, для создания информативных моделей. Изучение и понимание коннекторов открывает перед нами новые возможности и позволяет создавать более точные и ценные модели организации.
Напоследок я приглашаю вас на бесплатный вебинар, где обсудим для чего нужен инструмент моделирования, его основные функции и приемы работы с ним. Для обучения моделированию на языке Архимейт крайне важно использовать инструмент, поддерживающий все основные элементы и связи языка, и контролирующий правила их применения. Таким инструментом является Archi. Урок будет полезен архитекторам, тимлидам, аналитикам, разработчикам и всем, кто только начинает знакомство с Архимейт.
Комментарии (11)
avf48
27.06.2023 19:38Примеры моделей для финансов, можно посмотреть тут: https://bian.org/servicelandscape-8-0/views/view_29386.html
Создать модель - это одна беда, вторая - как, всё это поддерживать?
ArchiMate разрабатывался для описания всей "Системы", вплоть до серверов... а кто сейчас так проектирует ПО?... А для описания WF вполне подойдёт BPMN.
vvpoloskin
27.06.2023 19:38ПО так никогда и не проектировали, проектировали (и проектируют прямо сейчас) всю Систему в целом. Включая и ПО, и оборудование, и каналы связи, и пользовательские терминалы, и даже географические локации.
KY3EH
27.06.2023 19:38+1Много интересных примеров тут: https://www.hosiaisluoma.fi/blog/archimate-examples/
olku
Диаграммы ArchiMate не интуитивны, инструмент для закончивших курс, хотя был продуман и разработан для всех стейкхолдеров. XML Archi нормально не версионируется, в гит класть бессмысленно, следовательно, Architecture-as-code пролетает.
vvpoloskin
Мне кажется, вопрос в том как рисовать и объяснять. Только недавно делали схему, в которую уместилось техническое задание на создание автоматизированной системы.
Но в статье пример как-то так себе. Преимущество нотации же действительно в том, что можно делать «слои». Может специально чтоб показать сколько в нем разных стрелочек бывает?
olku
Нотацию приходится объяснять каждый раз, подглядывать в читшит. Сравните с C4 Model. В конторе искали вменяемый инструмент для AaC, пробуя на простой системе. Арчи отнимает неоправданно много времени.
vvpoloskin
В одну картинку на С4 все ТЗ на информационную систему не вместишь. А в информационную систему входит кроме ПО еще и оборудование, процессы (даже группы процессов), каналы.
olku
Одна картинка для всего и не нужна, смотрите https://github.com/team7katas/sysopsquad/blob/main/README.md
atshaman
Насчет "не версионируется" - не то, чтобы совсем не - есть официальный плагин coArchi (GitHub - archimatetool/archi-modelrepository-plugin: coArchi - a plug-in to share and collaborate on Archi models.), но оно да, "с нюансами".
KY3EH
1) Спорный вопрос по интуитивности, смотря для чего использовать. В провязке разных уровней архитектуры, от мотивационного, до "железного", очень понятно и удобно
2) Есть плагин https://sourceforge.net/p/archigitrepositoryplugin/wiki/Home/ для Гита