sequence diagram является схемой поведения, которая представляет взаимодействие между структурными элементами архитектуры как последовательность обменов сообщениями. Можно использовать диаграммы последовательности, чтобы описать, как части статической системы взаимодействуют.
Можно использовать диаграммы последовательности в System Composer™ путем доступа к галерее Architecture Views. Диаграммы последовательности интегрированы с моделями архитектуры. Для получения дополнительной информации о том, как создать и использовать диаграммы последовательности с архитектурной моделью, видит Диаграммы последовательности Использования в галерее Views.
В этом примере вы узнаете об основной терминологии и функциях диаграммы последовательности на двух этапах.
Добавьте пути выживания и сообщения с триггерными условиями и ограничительными условиями представлять взаимодействия.
Включайте фрагменты и операнды с ограничительными условиями далее задать поведение взаимодействия.
Создайте новую диаграмму последовательности путем навигации к Views > Architecture Views. Галерея Architecture Views открывается. Выберите New Sequence Diagram под кнопкой, чтобы создать новую диаграмму последовательности.
Новая диаграмма последовательности под названием SequenceDiagram
создается в Браузере Представления, и вкладка Sequence Diagram становится активной. Выберите Component > Add Lifeline
, чтобы добавить путь выживания элемента. Новый путь выживания с вертикальной пунктирной линией создается без имени.
Назовите путь выживания Element 1
и создайте второй путь выживания, Element 2
.
Выберите вертикальную пунктирную линию для Element 1
путь выживания. Перетащите к Element 2
путь выживания. Задайте To и концы сообщения From как In
и Out
, соответственно.
Нажмите на сообщение, чтобы видеть, куда поместить условие сообщения. Введите триггерное условие с одним из следующих триггерных событий:
crossing
rising
falling
Например, триггерное условие сообщения могло быть задано можно следующим образом:
falling(In.elem1 + 5)
Имя сигнала In.elem1
должен быть элемент сигнала в интерфейсе сигнала, сопоставленном с портом. Для получения дополнительной информации об интерфейсном управлении смотрите, Задают Интерфейсы.
Триггерное условие должно быть в этой форме:
triggerEvent(signalName (+|-) positiveReal)
Триггерное условие сообщения активируется на событии пересечения нулем, когда значение сигнала порта является нулем, начинающим с заданного значения.
Добавьте ограничительное условие с помощью булевого выражения MATLAB® в квадратных скобках. Ограничительные условия состоят из булевого выражения, действующего на имя сигнала.
[In.elem2 >= 1]
Ограничительным условием является дополнительная проверка после триггерного условия.
Примечание
Только целевые элементы поддерживаются для триггерных условий и ограничений. В этом примере, Out
исходный элемент и не может быть включен.
Можно использовать составные фрагменты, чтобы включить структуры управления в диаграммах последовательности. Операнды в составных фрагментах могут быть далее заданы с условиями операнда, состоявшими из булевых выражений MATLAB между именами сигнала.
Получить доступ к меню фрагментов:
Перетащите, чтобы выбрать сообщение.
Сделайте паузу на знаке (...), который, кажется, получает доступ к строке меню.
Список составных фрагментов появляется:
Alt Fragment
Opt Fragment
Loop Fragment
Seq Fragment
Strict Fragment
Par Fragment
Выберите Alt Fragment
.
Alt Fragment
фрагмент добавляется к сообщению диаграммы последовательности.
Выберите составной фрагмент, чтобы ввести условие операнда. Выберите полностью определенное имя сигнала и используйте ограничительное отношение условия.
Element 2/In.elem2 > 0
Ограничение определяет, когда альтернативный операнд принят.
Сообщение в операнде может быть выполнено, только если ограничительное условие верно.
Подсветите первый операнд под Alt Fragment
составной фрагмент и выбирает Fragment > Add Operand > Insert After. Добавляется второй операнд.
Добавьте ограничительное отношение условия к второму операнду.
Element 2/In.elem1 ~= 5
Второй операнд в Alt Fragment
фрагмент представляет elseif
условие, для которого не будет выполняться сообщение.
Можно просмотреть конечный продукт примера рабочего процесса для этой темы.
Откройте модель System Composer, которая содержит диаграмму последовательности.
model = systemcomposer.openModel('ArchModelDefine');
Откройте галерею Architecture Views, чтобы просмотреть диаграмму последовательности.
openViews(model);