«Не довольствуйся поверхностным взглядом. От тебя не должны ускользнуть ни своеобразие каждой вещи, ни ее достоинство.»
 
Консалтинговая компания Марк Аврелий


Archi и CиММА - сравнение систем моделирования

Кратко о статье: приводится сравнение систем моделирования архитектуры Archi и СИММА относительно основных функциональных возможностей Archi. Будет полезно тем, кто хотел бы подобрать промышленный многопользовательский аналог Archi для коллективной работы группы архитекторов по переосмылению или дизайну своего корпоративного ладшафта. СиММА не является аналогом Archi. Более правильно было бы сказать так: обладая гибкой мета-метамоделью, СиММА может быть настроена на полный повтор функционала Archi.

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

Archi

СиММА

1 Назначение продукта Изучение языка Archimate Создание корпоративного репозиторирия архитектурных элементов
2 Сущность архитектурного слоя Домен [согласно нотации Archimate] Каталог [согласно методологии TOGAF]
3 Ориентация Ориентирован на построение диаграмм Ориентирован на ведение архитектурных каталогов, а также и диаграмм. Ориентация СиММА на каталогизацию [согласно TOGAF] отличает ее от большинства продуктов на рынке, нацеленных на управление диаграммическими элементами.
4 Однопользовательский Многопользовательский
5 Целевые пользователи Студенты ИТ-специалисты, аналитики, архитекторы, менеджеры
6 Метамоделирование Нет Есть
7 Возможность адаптации и изменения нотаций В узких пределах согласно спецификации Archimate Широкие возможности адаптации, включая смешивание с другими нотациями.
8 Управление доступом к объектам репозитория Нет Да
9 Возможность ведения репозиториев без диаграмм Нет Да
10 Возможность работы в качестве NoCodeDB Нет Да, любые онтологии
11 Архитектура продукта Локальное приложение Трехзвенное приложение на базе СУБД PostreSQL
12 Платный? Бесплатный Платный
13 Наличие поддержки в РФ Да Нет

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


Функция или возможность

Archi

СиММА

Модель (наполнение и работа с репозиторием)

1

Поддержка каталогов элементов Не поддерживаются. Элементы моделей, как и их связи, можно просматривать только в дереве папок, равных по смыслу доменам Архимейт. В папках отображаются только имена элементов. Поддерживается каталог по каждому классу элементов Архимейт. В каталоге возможно отобразить любые атрибуты избранного класса элементов, в том числе связи.
2 Возможности по управлению списками элементов в модели Просмотр элементов списком в составе папки/домена. Просмотр элементов списком в составе каталога. Сортировки, фильтрации, копирование в буфер для передачи в Excel.
3 Поддерживается работа с карточками элементов и их атрибутами Да Да, возможно задать последовательность вывода атрибутов и их группировку в виде вкладок.
4 Обогащение элементов новыми атрибутами

Да. Существует возможность обогащать элементы произвольными атрибутами, но только текстовым.

Все атрибуты всех элементов образуют один общий массив переиспользуемых атрибутов в рамках модели.
Да. Элементы обогащаются атрибутами согласно шаблону классу.

Поддерживаются любые типы атрибутов: строки, текст, целые, дробные, даты, массивы, html-текст, перечислимые типы.

Возможно создать класс присоединяемых атрибутов для имитации Archi.
4.1 Обогащение связей новыми атрибутами См выше п.4. На связях поддерживаются атрибуты, заданные в шаблоне для мета-связи.
5 Поддерживается ли на карточке элемента массив ссылок на связанные элементы? Да, в подвале карточки с указанием диаграммы, где связь присутствует. Да, на самой карточке или ее вкладках.
6 Копирование элементов модели.
Можно копировать элемент, порождая новый элемент, а можно - с порождением графического инстанса существующего элемента на диаграмме
Да Да
7 Создавать элементы можно как на диаграммах, так и вне диаграмм Да Да. Элемент можно создавать, как на диаграммах, так и в каталогах.
8 Могут ли элементы модели существовать вне диаграмм? Да Да
9 Поддержка истории изменений элемента Нет Да
10 Управление связями элементов Да. Только через диаграммы. Да. Управлять связями можно как на карточке элемента, так и на диаграмме.
11 Настройка представлений элементов (каскады элементов из разных классов с учетом их связности) Нет Да
12 Контроль мощности связей Нет Да
13 Контроль валидности связей Только при ручном их заведении. Возможна загрузка невалидных связей. Да, как при ручном заведении, так и при загрузке из Excel или API.
14 Именование связей Только согласно Архимейт-стандарту. Произвольное именование связей, в том числе по стандарту.

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

Функция или возможность

Archi

СиММА

Диаграммы (схемы) - графическое отображение объектов репозитория

15

Элементы модели могут быть одновременно представлены на нескольких диаграммах  Да Да
16 Элементы модели могут не присутствовать на диаграммах Да Да
17 Поддержка стенселов для отображения элементов на диаграмме Один стенсел, предусмотренный разработчиками Archi. Любое число стенселов, настроенных пользователем или админом модели.
18 Поддержка произвольных связей на диаграмме Нет Да
19 Поддерживается ли гнездовое моделирование? Да, но строго не контролируется. Возможны иллюзии. Нет, сознательно.
20 Копирование диаграмм Да Да
21 Заморозка диаграмм Нет Да
22 Сравнение диаграмм Нет Нет, возможно через отчет в Excel
23 Преднастроенные шаблоны диаграмм Да, согласно точкам зрения (ViewPoint) Архимейт.
Шаблон задаёт состав классов на диаграмме.
Да. Можно настроить любой шаблон.
Шаблон задаёт состав классов на диаграмме.
24 Возможность нарушения состава классов на диаграмме Да. Через загрузку Да, с интерфейса пользователя.

В разделе ниже мы освещаем возможности мета-моделирования. В Archi его фактически нет (то есть задано хардкодом), СиММА же позволяет сконструировать мета-модель под задачи Заказчика.

Функция или возможность

Archi

СиММА

МетаМодель (управление шаблоном модели)

25

Кастомизация метамодели для создания новых классов элементов Не поддается кастомизации в широких пределах, практически только в учебных целях. Можно порождать новые классы элементов метамодели только путем наследования от существующих.  Да, возможна поддержка любых классов, наследование не поддерживается.
26 Обогащение классов мета-атрибутами Не поддерживается. Да.
Поддерживаются любые типы атрибутов: строки, текст, целые, дробные, даты, массивы, html-текст, перечислимые типы. 
27 Обогащение мета-связей новыми атрибутами – возможность создавать мета-атрибуты для включения их в мета-связи Не поддерживается. Да.
Поддерживаются любые типы атрибутов: строки, текст, целые, дробные, даты, массивы, html-текст, перечислимые типы. 
28 Направленность связей Связи носят однонаправленный характер. То есть, если «функция» принадлежит «системе», то это не означает наличие симметричного отношения, что «система» обладает «функциями». 
Симметричное отношение нужно выразить другой связью.
Все связи носят симметричный характер. Если у «системы» есть «функция», то значит у «функции» есть система, которая ею обладает. 
Фактически можно считать, что обе системы реализуют одно и тоже, но несколько по-разному. 
29 Какова степень кастомизации графинов?  Не поддерживается. Полная кастомизация графинов: цвет, размер, состав полей, цвета полей, положения полей, иконки.
30 Возможность создавать произвольные мета-связи Только путем наследования от связей, предусмотренных нотацией Архимейт. Да, любые. Наследование не поддерживается.

В разделе ниже мы освещаем возможности загрузки-выгрузки данных в репозиторий архитектуры. Строго говоря, это всегда вопрос кастомизации, так как он требует сопряжения метамоделей исходной и целевой системы. Выгрузить что-то в формате Archimate или BPMN имеет смысл лишь тогда, когда у вас есть другая система, настроенная точно также. Но здесь возникает вопрос: зачем вам две одинаково настроенные системы? Кроме того, сопряжение двух систем через передаточный файл уже давно кануло в Лету. Для таких сопряжений есть API и весь арсенал языков программирования. 

Объективно говоря, задачи переноса данных между репозиториями все-таки возникают:

  1. чаще всего перенос данных нужен не для всего репозитория в целом, а для отдельных его фрагментов в момент миграции данных.
  2. бывает необходимость принять такое решение: бизнес-архитектура и процессы описывается в одном программном инструменте, а ИТ-архитектура - в другом.

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

Функция или возможность

Archi

СиММА

Выгрузка-загрузка данных в репозиторий

31

Выгрузка данных по элементам модели Да. Поддерживается только плоскими списками из имен элементов. Атрибуты элемента выгружаются отдельным плоским списком в csv, что крайне затрудняет создание даже простых отчетов. Да, поддерживается выгрузка как каталогов с атрибутами каталога, так и представлений на всю глубину каскада представлений. Формат выгрузки – xls.
32 Выгрузка связей Поддерживается выгрузка связей отдельно от элементов. Так что для получения отчета о связности элементов придется «склеивать» два-три CSV-файла. Да, поддерживается как в рамках выгрузки каталога, так и в рамках выгрузки представления.
Формат выгрузки – xls.
33 Выгрузка модели в файл В формате Archimate. Разрабатывается по запросу [в любой формат], в том числе Archimate, если ММ вашего репозитория ему соответствует.
34 Загрузка данных из файла

В формате Archimate, в формате CSV.

В формате XLS (Эксель), по запросу разрабатывается поддержка любого формата, например, Archimate или BPMN, или xml, json.
35 Загрузка-выгрузка данных через API Нет Да


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

Функция или возможность

Archi

СиММА

Общие свойства продукта и поставщика продукта

36

Назначение продукта Обучение и изучение неофитами архитектуры нотации Архимейт. Построение репозитория архитектурных данных масштаба предприятия.
37 Поддержка многопользовательского режима Нет.
Арчи - однопользовательский. Работает только с файлом.
Одна модель = один файл.
Да.
Поддерживается много пользовательская работа со всеми моделями одновременно.
38 Поддержка API Не имеет смысла Да
39 Open Source? Да Нет
40 Наличие технической поддержки Нет Да
41 Входит в реест российского ПО? Нет Да


 


В заключение: Archi - отличный инструмент для обучения новичков нотации Archimate. Но в жизни каждого человека наступает момент, когда нужно пересесть с трехколесного велосипеда на транспортные средства для взрослых. Без этого не получится исследовать и познать мир.