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

Создайте метамодель

Любая модель начинается с выбора типа. Это может быть модель данных, модель процесса, модель ИТ-инфраструктуры, концептуальная модель или какая-то другая. У каждого типа свой набор объектов, свои атрибуты и отношения.

Например, в модели процессов вы описываете события, действия и последовательность их выполнения. В модели ИТ-инфраструктуры — серверы и приложения, запущенные на них.

В Architeezy есть готовые нотации моделирования, а если ни одна не подходит, вы описываете собственную. Ниже собрана нотация для описания требований.

Войдите в систему и создайте новый проект (см. Быстрый старт).

Создайте новую модель с типом Метамодель. Укажите название Requirement Model:

Создание метамодели

Метамодель уже содержит набор базовых классов:

  • NamedElement — абстрактный базовый класс с атрибутами название, описание, локализованное название, локализованное описание
  • RequirementModel — тип моделей
  • Entity — тип объектов
  • Relationship — тип отношений между объектами

Новая метамодель

Название и описание есть и у самой модели, и у объектов, и у отношений. Чтобы не повторять эти атрибуты в каждом классе, их объявляют один раз в NamedElement, а остальные классы наследуют от него.

У каждого атрибута должен быть тип данных:

  • Логический — допускает значения «да» или «нет»
  • Числовой — целое или действительное число
  • Строковый — строка символов с поддержкой локализации или без неё
  • Временной — дата или время
  • Уникальный идентификатор — UUID
  • Перечислимый — допускает одно значение из списка

В этой метамодели уже определены несколько типов данных:

  • String — однострочный текст
  • MultilineString — многострочный текст
  • LocalizedString — локализованный однострочный текст
  • LocalizedMultilineString — локализованный многострочный текст

Типы различаются тем, как атрибут правят в форме свойств: под многострочный текст отводится поле побольше, а у локализованного своё значение на каждый язык.

Отношения — тоже объекты со своими свойствами. У них есть название и описание, унаследованные от NamedElement, и ссылки на исходный (source) и целевой (target) объекты.

Остаётся последний из основных элементов метамодели — отношение композиции (на диаграмме выше оно обозначено ромбом). Оно означает, что объекты и отношения принадлежат модели: в навигаторе моделей вы создаёте их внутри модели требований и там же видите.