Автор статьи: Максим Рогоза

Корпоративный архитектор

Язык ArchiMate - мощный инструмент, который позволяет моделировать и описывать сложные архитектуры предприятия. В основе этого языка лежат элементы и их взаимосвязи, которые помогают создать цельную картину организации и ее процессов. Однако, чтобы полностью понять и мастерски использовать ArchiMate, необходимо обратить внимание на ключевой аспект - коннекторы.

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

Если вы захотите научиться говорить на иностранном языке, кроме запоминания слов и фраз, непременно столкнетесь с изучением грамматики. Грамматика является фундаментом, на котором строится язык, и без понимания ее правил мы не сможем правильно формулировать и передавать свои мысли. Подобно этому, изучение коннекторов в ArchiMate является ключевым к пониманию и успешному моделированию.

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

Рассмотрим схему

Человеку хотя бы отдаленно знакомому с UML будут в целом понятны компоненты, изображенные на диаграмме, и даже скорее всего будет понятен общий смысл, но вот разобраться досконально с тем алгоритмом, который изображен на схеме увы не получится. В отличии от компонентов, которые интуитивно понятны, коннекторы ArchiMate нужно запоминать, и также нужно запоминать их свойства и правила применений, для того, чтобы понимать смысл, заложенный в диаграмму. К счастью, коннекторов в ArchiMate не много, всего 12 штук. И запомнить их не так уж и сложно. Давайте попробуем рассмотреть самые основные:

А теперь рассмотрим первоначальную схему еще раз и попробуем ее прочитать, используя наши знания о коннекторах, почерпнутые из таблицы выше:

Клиент вводит номер заказа в Кэш терминале, который через API «проверка заказа» отправляется в ERP. В ответ API возвращает признак «заказ не найден» или карточку заказа. Если заказ не найден, то терминал просит ввести заказ повторно, если в карточке заказа есть признак «проблемы при оформлении заказа», то терминал выводит информацию об этом и завершает обслуживание.

Если все в порядке, то терминал отображает сумму заказа и переходит в режим приема оплаты. После оплаты терминал отправляет в API платежный интерфейс номер заказа и сумму оплаты для формирования чека. В случае удачной фискализации, терминал печатает чек, проставляет в заказе признак оплаты и передает информацию через API «Получение информации об оплате» в ERP.

В случае проблем с фискализацией, терминал печатает аварийный чек и завершает обслуживание. Также передает информацию об ошибке в ERP через API «Получение информации об ошибке».

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

Напоследок я приглашаю вас на бесплатный вебинар, где обсудим для чего нужен инструмент моделирования, его основные функции и приемы работы с ним. Для обучения моделированию на языке Архимейт крайне важно использовать инструмент, поддерживающий все основные элементы и связи языка, и контролирующий правила их применения. Таким инструментом является Archi. Урок будет полезен архитекторам, тимлидам, аналитикам, разработчикам и всем, кто только начинает знакомство с Архимейт.

Комментарии (11)


  1. olku
    27.06.2023 19:38
    +2

    Диаграммы ArchiMate не интуитивны, инструмент для закончивших курс, хотя был продуман и разработан для всех стейкхолдеров. XML Archi нормально не версионируется, в гит класть бессмысленно, следовательно, Architecture-as-code пролетает.


    1. vvpoloskin
      27.06.2023 19:38
      +1

      Мне кажется, вопрос в том как рисовать и объяснять. Только недавно делали схему, в которую уместилось техническое задание на создание автоматизированной системы.
      Но в статье пример как-то так себе. Преимущество нотации же действительно в том, что можно делать «слои». Может специально чтоб показать сколько в нем разных стрелочек бывает?


      1. olku
        27.06.2023 19:38
        +3

        Нотацию приходится объяснять каждый раз, подглядывать в читшит. Сравните с C4 Model. В конторе искали вменяемый инструмент для AaC, пробуя на простой системе. Арчи отнимает неоправданно много времени.


        1. vvpoloskin
          27.06.2023 19:38

          В одну картинку на С4 все ТЗ на информационную систему не вместишь. А в информационную систему входит кроме ПО еще и оборудование, процессы (даже группы процессов), каналы.


          1. olku
            27.06.2023 19:38

            Одна картинка для всего и не нужна, смотрите https://github.com/team7katas/sysopsquad/blob/main/README.md


    1. atshaman
      27.06.2023 19:38

      Насчет "не версионируется" - не то, чтобы совсем не - есть официальный плагин coArchi (GitHub - archimatetool/archi-modelrepository-plugin: coArchi - a plug-in to share and collaborate on Archi models.), но оно да, "с нюансами".


    1. KY3EH
      27.06.2023 19:38

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

      2) Есть плагин https://sourceforge.net/p/archigitrepositoryplugin/wiki/Home/ для Гита


  1. avf48
    27.06.2023 19:38

    Примеры моделей для финансов, можно посмотреть тут: https://bian.org/servicelandscape-8-0/views/view_29386.html

    Создать модель - это одна беда, вторая - как, всё это поддерживать?

    ArchiMate разрабатывался для описания всей "Системы", вплоть до серверов... а кто сейчас так проектирует ПО?... А для описания WF вполне подойдёт BPMN.


    1. vvpoloskin
      27.06.2023 19:38

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


  1. KY3EH
    27.06.2023 19:38
    -1

    Я бы не рекомдовал смешивать слои на моделях:


  1. KY3EH
    27.06.2023 19:38
    +1

    Много интересных примеров тут: https://www.hosiaisluoma.fi/blog/archimate-examples/