Назначение учебника
В этом учебнике рассказывается и демонстрируется SysML в рамках проекта SYSM, поставляемого вместе с Cradle. Он дает понимание того, как Cradle может быть применен в системном проектировании, и формирует основу для более углубленной подготовки и использования.
Данный учебник разработан, для того, чтобы помочь пользователю, не являющемуся экспертом в SysML, познакомиться с тем, как создавать диаграммы SysML в Cradle и устанавливать трассируемость к требованиям разных уровней архитектуры системы. Диаграммы, которые мы рассмотрим: Use Case (uc), Activity (act), Block Definition (bdd), Internal Block (ibd), Sequence/Interaction (sd) and Requirements (req).
Основными темами являются создание определенных диаграмм и установление трассируемости при использовании этих диаграмм. Учебник не рассматривает инженерные аспекты использования различных диаграмм.
Мы будем использовать пользовательский тип элемента Cradle RQMT, которые будут содержать требования к системе различных уровней . Категория ReqType будет использоваться для определения типа требования. Ее значения приведены на рисунке 1.
Эти элементы-требования должны быть соединены с элементами моделирования SysML при помощи отношения «refine»(уточняет) при связывании с «useCase»(вариантами использования), и отношения ««satisfy»(удовлетворяет) при связывании с элементами моделей, описывающими поведение или структуру системы поведенческим/структурным элементом моделирования. Также будет использоваться отношение «derived reqt» (производное требование), при связывании требований друг с другом.
Обзор Cradle SysML
Язык SysML состоит из сущностей, свойств, отношений и диаграмм:
- Типы элементов языка (называемые стереотипами) используются для спецификации системы или процесса
- Свойства элемента, такие как операции, свойства потоков данных и части
- Отношения определяют связи между элементами моделирования (т.е. трассируемость)
- SysML диаграммы используются для моделирования концепций. Ниже представлены девять диаграмм SysML:
Чтобы продемонстрировать возможности реализации SysML в Cradle, в этом учебнике рассматривается работа с боковой панелью SysML Modelling (Моделирование) и диаграммами, представленными выше.
Учебник основывается на демонстрационном проекте под названием SYSM и показывает, как Cradle поддерживает SysML.
Проект SYSM основывается на процессе системного проектирования, показанном в документе SysML Schema и структуре базы данных Cradle (диаграмме), используемой для поддержания этого процесса.
Совет: Прежде чем приступать к данному учебнику, рекомендуем сначала ознакомиться с документами Cradle Overview и SysML Schema.
Учебник предполагает, что Cradle уже установлен, а также есть лицензии для всех его модулей. Если вы используете систему Cradle, приобретенную вашей организацией, то может оказаться, что некоторые части данного учебника не поддерживаются вашими лицензиями. В этом случае свяжитесь с SATURS и вам предоставят пробную лицензию.
Если вы используете Cradle на Windows (ПК или ноутбуке), вы можете сбросить проект SYSM, выбрав Start (Старт) > All Programs (Все программы) > Cradle > Utilities (Утилиты)> Reset Projects (Сбросить проекты) > Reset SysML Project SYSM (Сбросить SysML проект SYSM):
Если вы работаете на Linux, используйте Project Manager Cradle и выберите Project (Проект) > Reset Example Projects (Сбросить демонстрационные проекты) > SysML Example Project SYSM (Демонстрационный проект SysML SYSM):
После того, как вы ознакомитесь с Учебником по SysML, попробуйте поменять демонстрационные данные и создать свои собственные данные. Вам доступны две пустые модели SysML в проекте SYSM.
Они называются Tractor (Трактор) и Lorry (Грузовик), или вы можете создать свои собственные модели.
SysML в WorkBench
- Запустите WorkBench, выбрав в меню Пуск: Programs (Программы)> Cradle > WorkBench
- Введите следующие данные:
a. Имя пользователя: REQMAN
b. Пароль: REQMAN
c. Код проекта: SYSM - Нажмите Войти:
Имя пользователя можно вводить в любом регистре, но будьте внимательны с паролем.
Боковая панель SysML Modelling (Моделирование) позволяет пользователям создавать, просматривать и редактировать элементы стереотипов и диаграммы.
- Нажмите на боковой панели Modelling (Моделирование) кнопку
, которая отображается с левой стороны экрана WorkBench:
Когда нажата кнопка Modelling (Моделирование), по умолчанию отображаются модель SysML Default. Настроить модель по умолчанию можно в разделе пользовательских настроек Workbench.
- Нажмите кнопку Choose Model… (Выбрать модель) наверху боковой панели и выберите нужную модель для работы. В данном учебнике мы рассмотрим модель SysML—Automobile из раздела Implementation Domain, поэтому выберите ее и нажмите ОК.
На боковой панели Modelling (Моделирование) теперь отображается содержимое модели SysML—Automobile:
Как вы видите, на боковой панели Modelling (Моделирование) расположен узел верхнего уровня «model» (модель), внутри которого находится иерархия узлов «package» (пакет), которые и содержат элементы моделей. - Нажмите на кнопку
, чтобы открыть спецификацию «model». Здесь можно добавлять дополнительную информацию. Добавьте комментарий в поле Comment (Комментарий) и затем сохраните свои изменения, используя кнопку Save Item (Сохранить элемент) на вкладке Home (Главная). Закройте спецификацию.
- В каждом пакете «package» находятся вложенные дочерние пакеты, все относящиеся к нему диаграммы и папка Elements (Элементы), в которой перечислены все элементы стереотипов, содержавшиеся в пакете. Разверните «package» 2, и вы увидите вложенный дочерний пакет, Use Case Diagram (uc) и папку Elements (Элементы).
Элементы и диаграммы, содержащиеся в пакете, связаны перекрестными ссылками с данным пакетом с помощью отношения «containment» (включение). Если элемент моделирования используется повторно в другом пакете, тогда используется отношение «containment reuse» (повторное включение). - Выберите модель SysML—Automobile, щелкните правой кнопкой и выберите Links (Связи) > All linked items…. (Все связанные элементы). Появится диалоговое окно, которое показывает перекрестные ссылки на другие пакеты. Нажмите
, чтобы закрыть диалоговое окно.
- На боковой панели Modelling (Моделирование) находятся три кнопки в верхнем правом углу, которые позволяют добавлять новые пакеты и данные моделей.
Данные кнопки означают:
New Package (Новый пакет) — позволяет создать новый пакет в иерархии текущей модели. Чтобы создать в модели пакет верхнего уровня, выделите узел «model» и нажмите эту кнопку. Чтобы создать дочерний/вложенный пакет — выделите существующий пакет и нажмите эту кнопку.
New Diagram (Новая диаграмма) — позволяет создать новую диаграмму в верхней модели или определенном пакете, выделяя узел верхней модели или определенный узел пакета.
New Element (Новый элемент) — создает новый элемент стереотипа, который будет содержаться в указанном пакете или в модели верхнего уровня.
- Выберите «package» 1 и нажмите кнопку New Package (Новый пакет). Элементу автоматически присвоится стереотип «package»:
- Введите Identity (Идентификатор), например, Мой новый пакет и нажмите OK.
Новый пакет добавится как дочерний в «package» 1:
- Новый пакет откроется автоматически, поскольку в предыдущем окне была выбрана опция «Open new item in form» (Открыть новый элемент в форме). Закройте пакет, нажав на кнопку X.
- Теперь мы создадим диаграмму. Выделите «package» 1 и нажмите кнопку New Diagram (Новая диаграмма) наверху боковой панели Modelling (Моделирование)
- Нажмите Choose Item Type… (Выбрать тип элемента) и выберите Use Case (uc).
- Затем введите Identity (Идентификатор) и Name (Имя) как показано в примере выше и нажмите OK. Не беспокойтесь о добавлении стереотипа для диаграммы, это опциональное поле. Вы можете добавить свои собственные стереотипы в схему проекта в разделе Modelling (Моделирование) в иерархии стереотипов.
Будет открыта диаграмма и отобразится боковая панель Control (Управление), которая содержит Symbol Palette (Символьная панель).
- Более подробная информация о том, как использовать инструменты для рисования можно найти в Руководстве пользователя WorkBench. На данный момент мы просто поместим один символ на диаграмму. Выберите символ Actor (Роль). Передвиньте диаграмму и щелкните, чтобы поместить символ. На экране появится диалоговое окно, где можно присвоить объекту имя. Дайте Actor имя Me (Я) и нажмите ОК. Объект появится на диаграмме.Примечание: Пожалуйста, НЕ сохраняйте и НЕ закрывайте диаграмму, т.к. позднее мы к ней еще вернемся.
- Нажмите кнопку
, чтобы вернуться на боковую панель Modelling (Моделирование) и убедитесь, что все еще выбран «package» 1, и нажмите на кнопку
New Element (Новый элемент).
Появится диалоговое окно New Item (Новый элемент).
- Установите Стереотип в «useCase»(вариант использования) и введите, например, My first Use Case (Мой первый вариант использования) в качестве Identity (Идентификатор). Нажмите OK.Новый элемент (спецификация) будет добавлен в папку Elements (Элементы) пакета «package» 1, и открыт в интерфейсе WorkBench.
- Введите любой текст в поле Detailed Description (Детальная информация).
- Сохраните и закройте новый элемент, нажав кнопку X на панели имени спецификации и затем убедитесь, что сохранили все изменения.
- На боковой панели Modelling (Моделирование) вы можете перемещать элементы между пакетами. Перетащите элемент, который вы только что создали («useCase» My First UseCase) в «package» Мой новый пакет. Это пакет, который вы создали ранее. Как только вы отпустите кнопку мыши — вcплывет диалоговое окно с двумя опциями. Выберите Move into Package (Переместить в пакет). Элемент перемещен и его права присвоены новому пакету
- Вернитесь к диаграмме uc.50, откройте боковую панель Control (Управления), выберите символ Use Case, и щелкните в область рисунка.Появится диалоговое окно Name Symbol (Имя символа), которое позволит вам изменить другие детали. Введите My First Use Case (Мой первый вариант использования) в качестве Name (Имя) и установите Use specified line length (Использовать заданную длину строки), например, 20. Нажмите OK, чтобы добавить новый символ. Ваш новый символ будет добавлен в диаграмму.
- Нажмите Esc, таким образом, фокус не будет установлен на создании другого символа. Выберите созданный символ и переместите его на новую позицию.
- Выберите этот же символ, щелкните правой кнопкой мыши и выберите View (Просмотреть) /Edit (Редактировать)> Latest (Последнее). Вам откроется спецификация, созданная ранее и вы увидите текст, который вы ввели в поле Detailed Description (Подробное описание). Нажмите на кнопку x, чтобы закрыть спецификацию.
- Выберите Me, щелкните правой кнопкой мыши и выберите View (Просмотреть) /Edit (Редактировать)> Latest (Последнее).
- Cradle предложит вам подтвердить, что спецификация не существует и спросит, хотели ли бы вы создать новую. Выберите Yes (Да).
Обратите внимание, что после создания новая спецификация будет открыта и готова к редактированию. Закройте спецификацию, сохраните и закройте диаграмму. Обратите внимание на то, что «actor» Me теперь появился в папке Elements (Элементы) на боковой панели Modelling (Моделирование).
- Теперь мы можем просмотреть все существующие диаграммы в Automobile Model. Разверните «package» 2 и откройте Диаграмму Use Case, нажав на символ диаграммы:
Диаграмма Use Case выводит на экран ряд Вариантов использования (задачи, цели, функции, которые должны выполняться системой), а также роли/заинтересованные стороны, которые задействуются и участвуют в этих Вариантах использования. На диаграмме варианты использования представлены в виде овалов. Прямоугольник представляет рассматриваемую систему, которая должна выполнять каждый вложенный Вариант использования.Чтобы понять Вариант использования, мы рассказываем истории. Каждая история определяет операции, необходимые для достижения целей/задач, или как обрабатывать ошибки/проблемы, которые могут возникнуть. Сначала детали такой истории собираются в виде текстовой спецификации Варианта использовании,а затем описываются более подробно, с помощью Диаграммы Деятельности SysML Activity (act). Диаграммы, используемые в этом контексте, относятся к сценариям функционирования, потому что они являются основанием для Документа «Концепция функционирования». - Чтобы просмотреть сценарий функционирования, связанный, например, с Вариантом использования Door Locking & Unlocking (Открытие и закрытие двери), выберите символ Варианта использования, щелкните правой кнопкой мыши и выберите Links (Связи) > All linked items…. (Все связанные элементы).:
- Выберите act -1, первый элемент в списке:
Данный сценарий функционирования показывает упорядоченный по времени поток действий, которые необходимы для завершения указанного Варианта использования. Для получения дополнительной информации о символах диаграммы см. раздел Activity Diagram (act) онлайн-справки Cradle. Диаграммы acts классифицируются как поведенческие диаграммы, потому что они описывают поведение сущности в SysML. Поэтому в данном учебнике мы поместили acts в «package» 4-Behaviour (Поведение). - Закройте обе диаграммы.
На основе понимания, полученного при разработке сценариев функционирования для каждого Варианта использования, были разработаны Требования заинтересованных сторон, в данном учебнике с помощью типа элемента RQMT, и связаны с соответствующими элементами «useCase», используя отношение «refine» (уточняет).
- На следующем рисунке показан пример Вариантов использования и производные Требования заинтересованных сторон, связанные с этими Вариантами использования. Для выполнения данного запроса откройте боковую панель Phase (Фаза), нажав на кнопку
, и выберите UseCase — Stk _Reqs:
- Закройте запрос и вернитесь на боковую панель Modelling (Моделирование).
- В «package» 3 есть два вида диаграмм SysML, используемых для определения структуры предложенной системы (т.е. Block Definition Diagrams — bdds и Internal Block Diagrams — ibds). Блок, используемый в обеих диаграммах, обозначает сущность (например, система, подсистема, свет, отчет, организация, человек, и т.д.). Закрашенный ромбовидный символ обозначает составные части этой сущности, а пустой ромбовидный символ обозначает сущности, на которые ссылаются и которые могут взаимодействовать с рассматриваемым Блоком.На основе понимания, полученного при определении Вариантов использования и различных сценариев функционирования, как правило, сначала создается System Context Diagram для определения внешних систем (искусственная и естественная среда), с которыми может взаимодействовать рассматриваемая подсистема.
- Раскройте «package» 3. В данном пакете находятся по две диаграммы ibd и bdd. Откройте bdd-1, нажав на значок диаграммы. Диаграмма bdd, показанная ниже, используется для определения интерфейсных внешних систем при помощи пустого ромбовидного соединительного символа:
У символа Блока есть несколько разделов, которые можно вывести на экран, ставя соответствующий флажок на боковой панели Control (Управление).
- Выберите блок Automobile System и на боковой панели Control (Управление) выберите разделы flow properties (свойства потока) и operations (операции). Как вы видите, блок Automobile System теперь показывает свойства потока и разделы:
Содержание разделов определяется путем соединения других элементов с элементом Блока. Это гарантирует, что информация представляет живые элементы SysML, а не простой текст, введенный в поле.Эти связи можно увидеть на боковой панели Modelling (Моделирование), как показано на следующем рисунке:
- Закройте bdd-1 и НЕ сохраняйте диаграмму.
- Снова откройте ibd-1 в ««package» 3. Она используется для определения интерфейсной информации на системном уровне для Automobile System.
Как видно из примера ниже, пунктирные прямоугольники представляют внешние системы и стрелки на потоках определяют интерфейсную информацию. Элементы-потоки на диаграмме также отображаются на боковой панели Modelling (Моделирование): - Некоторые из этих символов составные. Соединитель между Fuel Supply (Подача топлива) и Automobile System (Автомобильная система) переносит Элемент Потока под названием Fuel (Топливо). Дважды щелкните по линии соединителя, и отобразится диалоговое окно Link Details (Детали связи). Это фактическая перекрестная ссылка, создаваемая между Fuel Supply и Automobile System. Как вы видите на вкладке Атрибуты, причина создания — Fuel is a primary input (Топливо – это основной вход). Закройте диалоговое окно Link Details (Детали связи).
- Теперь снимите выделение с линии соединителя и дважды щелкните стрелку Fuel (Топливо). Откроется Спецификация Fuel.
- Закройте ibd-1 и откройте bdd-2 из «package» 3. Здесь показана структура Automobile System на один уровень ниже по иерархии системы, при помощи закрашенного ромбовидного символа.
На диаграмме показано несколько примеров декомпозиции системы и ее подсистем, например, Automobile System (Автомобильная система) к Power Train (Трансмиссия) и далее к Engine (Двигатель), Transmission, Differential (Дифференциал), Rear Wheels (Задние колеса) и Front Wheels(Передние колеса). Также есть пример символа Обобщения (пустой треугольный символ), указывающий, что двигатель может быть или 4-Cylinder Engine (4 цилиндровый) или 6-Cylinder Engine (6 цилиндровый).Блокам на bdd должны быть присвоены: поведение («package» 4), интерфейсная информация («package» 5), проектные ограничения («package» 6) и связанные требования («package» 7).
Эта диаграмма также демонстрирует возможность добавления стереотипов, определяемых пользователем. В этом проекте определили «программное обеспечение» и «аппаратные средства» как два пользовательских дочерних стереотипа по отношению к «block». В проекте также определили фрейм Part Reference Number (Номер компонента) . - Щелкните правой кнопкой мыши по «block» Battery и затем View (Просмотреть) /Edit (Редактировать)> Latest (Последнее). Как вы можете видеть, у нее есть этот номер (Part Reference Number). Закройте спецификацию
- «hardware» (аппаратные средства) — пользовательский стереотип, созданный на основе «block». Дважды щелкните по «hardware» Computer (Компьютер) и вы увидите, что он унаследовал тот же фрейм, как и родительский базовый стереотип «block». Наведите курсор на поле Стереотип, чтобы увидеть его описание. Закройте спецификацию.
- В проекте также определено «software» (программное обеспечение), как пользовательский дочерний стереотип от «block». Ему дали дополнительный определяемый пользователем фрейм под названием PSEUDO CODE. Дважды щелкните по «software» Software Controller (Контроллер ПО), чтобы отобразилось его определение. Затем закройте спецификацию.
- Закройте bdd-2 и откройте боковую панель Phase (Панель фаз)
- Запустите SyS_Reqs – фазу Full Downward Traceability (Полная трассируемость вниз):
Вы можете видеть, на какие Блоки назначены те или иные системные требования. Обратите внимание, что существуют функциональные и нефункциональные требования, назначенные на Блоки, которые определяются на диаграммах bdd, и функциональные требования назначенные на действия «package» 4 на диаграммах act. Таблица трассируемости показывает, какие системные требования с какими элементами моделирования связаны.
- Закройте запрос и вернитесь на боковую панель Modelling (Моделирование).
- Откройте ibd-2, содержащуюся в «package» 3. Она используется для определения компонентов Power Train (Трансмиссии) и интерфейсной информации.
- Дважды щелкните по символу Fuel (Топливо) и он откроет ту же спецификацию, которую мы видели раннее, когда рассматривали соединитель от Fuel Supply (Подача топлива) до Automobile System (Автомобильная система) в ibd-1. Закройте спецификацию.
- Обратите внимание на то, что у нас есть два варианта Wheel (Колеса). Это right rear (правое заднее) и left rear (левое заднее). Если вы поочередно дважды щелкните по каждому из них, то увидите, что у них разные PART REFERENCE NUMBERS. Однако оба они относятся к Wheel. Если вы щелкнете правой кнопкой по спецификации для right rear или left rear и выберете Links (Связи) > All linked items…. (Все связанные элементы) — то вы увидите отношение «instance»(экземпляр) к Wheel. Если вы нажмете значок
, то откроется спецификация Wheel. Закройте все спецификации.
- Закройте ibd-2 и разверните «package» 4. Данный пакет содержит три вида поведенческих диаграмм: Activity, Sequence и State Machine. Act (действие) используется для моделирования поведения каждого Действия (или операции), назначенной на «block», определенный на bdd. Поведение определяет преобразование входа к выходу, через упорядоченную во времени последовательность действий. Диаграмма деятельности — основное представление для моделирования поведения, основанного на потоках, также она является аналогом широко используемых диаграмм functional flow, предназначенных для моделирования поведения систем.
- Откройте act-5 из «package» 4.1.
- Данная диаграмма показывает дорожки (swimlines), которые использовались для разделения всей системы на области. Щелкните правой кнопкой по Tom (экземпляр Driver (Водитель)) и выберите Expand…. (Раскрыть). Вам откроется список, содержащий «actor»(роль) Driver. После нажатия OK откроется спецификация Driver. Закройте спецификацию.
- Действия — прямоугольники с закругленными углами. Действие со значком грабли в правом нижнем углу — специальное действие, известное как Call Behaviour Action (Вызов действия). Оно вызывает другую диаграмму поведения (act, sd или stm). У этого символа есть и определение, и раскрытие. Щелкните правой кнопкой по символу и выберите выберите View (Просмотреть) /Edit (Редактировать)> Latest (Последнее) → откроется спецификация определения. Здесь вы можете ввести любые детали для Call Behaviour Action. Закройте спецификацию. Щелкните правой кнопкой по символу снова и выберите Expand…. (Раскрыть). Выберите act-4 из диалогового окна View (Просмотреть) /Edit (Редактировать). Таким образом, у вас появится доступ к выполнению диаграммы.
- Нажмите на кнопку уменьшения масштаба
на панели Diagram (Диаграмма), чтобы была видна вся диаграмма.
Небольшие квадраты, приложенные на краю символов действия, представляют собой объекты данных (т.е. узлы объектов). Это — блоки, сигналы или типы значений элементов входа/выхода. Большие прямоугольники — Activity Parameters (Параметры действий), которые определяют входы/выходы для диаграммы.Данная диаграмма наглядно демонстрирует один из множества Тегов, которые могут быть связаны с различными элементами SysML. Control Fuel Air Mixture (Контроль топлива и воздуха) имеет специальный localPreCondition Fuel, показывающий, что присутствует воздух и топливо.
- Щелкните правой кнопкой по «action» (дейстиве) Control Fuel Air Mixture и выберите View (Просмотреть) /Edit (Редактировать)> Latest (Последнее). Вы увидите, что он имеет ряд специальных фреймов.
- Фрейм LOCALPRECONDITION содержит Предусловие. Раскройте фрейм LOCALPRECONDITION при помощи кнопки
и обратите внимание, что выражение содержит некоторые ссылки [@REF_ID:FUEL] и [@REF_ ID:AIR]. Щелкните правой кнопкой и выберите Links (Связи) > All linked items…. (Все связанные элементы). Вы увидите два специальных отношения «item reference». Они относятся к «block» Fuel (топливо) и air (воздух).
- Закройте всплывающее окно и нажмите кнопку меню фрейма (правая стрелка). Выберите Item References (Связи элемента) > Preview (Предварительный просмотр). Таким образом, изменится содержание фрейма, чтобы показать названия спецификаций на другом конце ссылки (это то, что вы видите на диаграмме). Таким образом «action» непосредственно связано с Fuel и Air, на которые накладывается LOCAL_PRECONDITION.
- Сверните фрейм и перейдите в LOCALPOSTCONDITION. Нажмите кнопку меню фрейма и выберите Tags (Теги) и затем localPostcondition.
- Введите Surplus fuel vapour vented в поле Expression и This is an internal function в поле Comment. Нажмите ОК.
- Нажмите Ctrl + S, чтобы сохранить спецификацию и затем нажмите кнопку х для закрытия.
- Убедитесь, что выбрано «action» Control Fuel Air Mixture (Контроль топлива и воздуха) и затем на панели выберите символ Note Callout (Примечание) и поместите его на свободное место.
- Введите Name (Имя) My Tags List (Мой список тегов), затем выберите … в конце поля Тег:
- Выберите All (Все) и нажмите OK и снова OK. Таким образом вы поместите на диаграмму символ примечания. В данный момент отобразится только имя, чтобы показать Все теги, во-первых необходимо нажать Esc, таким образом вы выйдете из режима Рисования. Затем вы должны выбрать Note Callout (примечание) и выбрать тег из секции Compartments (Составляющие) на боковой панели Control (Управление). Теперь при Вызове примечания на экран выводится вся информация о тегах символов.
Настройка All (Все) предназначена для отладки, поскольку это не самое полезное отображение. Инженеры, вероятнее всего, будут использовать символ Тегаи выбирать отдельные данные для вывода на экран (как показано с localPreCondition).
- Закройте обе диаграммы Activity и разверните «package» 4.2. Для закрытия вкладок вы можете использовать Ctrl + W, а затем вновь откройте боковую панель Modelling (Моделирование).
- Откройте sd-2.
Диаграммы Sequence Interaction (sds) состоят из Lifelines (дорожек) Block/Actor (Блок/Роль) и Message Events (Сообщения о событиях), которыми обмениваются между Lifelines (дорожками). Символ Lifeline представляет собой пунктирную линию, которая показывает временную шкалу объекта, где время идет сверху вниз. Сообщения о событии — это Signal Events или Call Events (например, блокировка запросов обслуживания). - Выберите дорожку Driver, щелкните правой кнопкой и выберите View (Просмотреть) /Edit (Редактивароть)> Latest (Последнее). Откроется спецификация дорожки. Как видите, у нее есть фреймы CONSTRAINT (ОГРАНИЧЕНИЕ) и TIME (ВРЕМЯ) для дополнительных тегов. Закройте эту спецификацию.
- Щелкните правой кнопкой по дорожке Driver и выберите Expand…. (Раскрыть). Нажмите OK. Вам откроется диаграмма Driver (мы рассматривали пример Tom на диаграмме act-5). Закройте эту спецификацию.
- Закройте sd-2 и вернитесь на боковую панель Modelling (Моделирование).
- Разверните «package» 4.3 и откройте stm-1.
State (Состояние) представляет важное состояние жизни Блока. Диаграммы состояний (конечных автоматов) State Machine (stm) описывают, как Блок переходит из одного состояния в другое и определяют, какое логическое поведение (действия, последовательность взаимодействий или конечных автоматов, принадлежащих Блоку) выполняется при входе или выходе из того или иного состояния.Этот тип диаграммы хорошо подходит для описания целостного представления о поведении Блока, потому что все отдельные линии поведения, определенного для Блока при помощи диаграммы act, интегрированы в единую исполняемую модель, используя stm.
- Двойной щелчок по состоянию Vehicle Off откроет его спецификацию. Вы можете увидеть, что у него определен тег GUARD. Закройте спецификацию и убедитесь, что выбран Vehicle Off. Выберите символ на панели рисунка и поместите его в свободное место.
- В диалоговом окне Name Symbol (Имя символа) нажмите кнопку … в конце поля Тег и выберите guard. Нажмите «OK», чтобы добавить его на диаграмму.
- Закройте stm-1 и разверните «package» 5-Interfacing Info (Интерфейсная информация) и затем разверните папку Elements (Элементы). Этот пакет содержит элементы, которые проходят через систему. Они представляют ключевую интерфейсную информацию, поэтому разработчики моделей собрали их в группу в отдельный пакет. Это выбор пользователя. Эти элементы представляют собой Блоки (например, топливо, установка педали акселератора), Сигналы или Типы значений. Щелкните значок + рядом с элементами, чтобы развернуть их через всю модель.
- Разверните «package» 6. Данный пакет содержит Parametric Diagrams (pars) (Параметрические диаграммы), которые показывают уравнения, определяющие ограничения производительности Блока, используя графическое представление каждого параметра уравнения. Параметрические модели сосредоточены на определении свойств системы, которые важны при удовлетворения выявленных требований к производительности. Откройте par-2, в качестве примера:
- Дважды щелкните по «constraint» Fuel Flow Constraint (Ограничение расхода топлива) и вы увидите, что ему назначили тег CONSTRAINT.Обратите внимание на то, что у этого выражения также есть ID, который относится к связанным элементам, которые составляют выражение. Закройте спецификацию.
- Закройте par-2 и разверните «package» 7. Этот пакет содержит пример Requirement Diagram (req) (диаграммы требований). Диаграммы req используются для графического представления иерархии потребностей заинтересованных сторон, требований и тестовых сценариев или для изображения индивидуальной потребности/требования/тестового случая и его связей с другим элементами модели. Потребности заинтересованных сторон, требования и тестовые случаи создаются и управляются в Cradle и связываются с элементами моделей SysML. Эти диаграммы не предназначены для отображения всех требований, их задача — привлечь внимание к важным требованиям, которые вы хотите выдвинуть на первый план. Если вы хотите видеть полную диаграмму тогда, авто-диаграмма HID в Cradle позволит вам автоматически создавать целую иерархию от выбранного элемента. Откройте req-3:
Как вы могли заметить, элементы RQMT, показанные на диаграмме req, также отображены на боковой панели Project (Проект). - Обратите внимание, что RQMT:Auto.1 включает в себя текстовый фрейм, работающий как один из ее составляющих. Если вы дважды щелкните по этому символу, чтобы просмотреть конкретный RQMT, то вы увидите основной текст, отображенный в этом текстовом фрейме. Измените часть текста, добавив несколько строк описания, например, Initially this is a concept only and non production car.
- Нажмите Ctrl + S для сохранения. Для данного типа элемента включено ведение истории изменений, поэтому при сохранении будет запрошет комментарий, почему вы изменили текст.
- Введите комментарий и нажмите ОК. Щелкните по вкладке, содержащей диаграмму, и нажмите кнопку Refresh (Обновить)
на вкладке Diagram (Диаграмма), чтобы восстановить отображение данных от требования до символа.
- Откройте боковую панель Project (Проект), нажав кнопку
, пролистните вниз и откройте узел HID -Hierarchy (Иерархия). Выберите и откройте одну из диаграмм, чтобы посмотреть примеры автопостроенных диаграмм, показывающих связь между компонентами вашего проекта.
- Закройте диаграмму req и элемент RQMT, не сохраняя никаких изменений. Обычно требования отображаются в формате таблицы, а не диаграммы req, из-за большого количества требований.
- Откройте боковую панель Phase (Фаза) и запустите фазу StK NEEDs. Таким образом откроется запрос Needs-simple. Этот запрос показывает трассируемость от потребностей заинтересованных сторон к их требованиям и далее к системным требованиям:
- Запустите другие запросы в папке Phase (Фаза) и проверьте уровни трассируемости, а также требования, которые связаны с элементами моделирования, такие как Блоки и Действия/Активности.
- Разверните папку SysML Automobile Documents и запустите узел фазы SysML Demo Document. Запустится Document Publisher и сгенерирует документ Automobile System.
Заключение
В данном учебнике мы рассмотрели, как использовать боковую панель Modelling (Моделирование), как просматривать и редактировать элементы SysML и диаграммы.
Далее нажмите кнопку Choose Model (Выбрать модель) в верхней части боковой панели, чтобы переключиться на один из примеров модели (Lorry или Tractor) или используйте модель, которую вы создали. Запомните, что они соединены для описания концепции или архитектуры.
Список сокращений
ACD Activity Diagram
act Activity Diagram — SysML
AID Architecture Interconnect Diagram
API Application Programming Interface
ASG Ada Structure Graph
BD Behaviour Diagram
bdd Block Definition Diagram — SysML
CBS Cost Breakdown Structure
CC Consistency Checker
CD Class Diagram
CDS Cradle Database Server
CGEN Code Generator
CHR Change Request
CHT Change Task
CM Configuration Management
CMS Configuration Management System
COD Collaboration Diagram
CPD Component Diagram
CREV Reverse Engineering
CRS Category Recognition String
CWS Cradle Web Server
DD Data Definition
DDE Data Dictionary
DFD Data Flow Diagram
DID Database Identifier
DPD Deployment Diagram
DSD Data Structure Diagram
eFFBD Extended Function Flow Block Diagram
ERD Entity Relationship Diagram
HID Hierarchy Diagram
ibd Internal Block Diagram — SysML
IDF IDEF0
KPI Key Performance Indicator
LDAP Lightweight Directory Access Protocol
PAD Physical Architecture Diagram
PID Project Identifier
pkg Package Diagram — SysML
PP Performance Parameter
PUID Project Unique Identifier
req Requirement Diagram — SysML
SAD Software Architecture Diagram
SBS System Breakdown Structure
SCD Statechart Diagram
sd Sequence Diagram — SysML
SQD Sequence Diagram
STC Structure Chart
STD State Transition Diagram
SVG Scalable Vector Graphics
uc Use Case Diagram — SysML
UCD Use Case Diagram
UID Unique Identifier
WBS Work Breakdown Structure
XML Extensible Markup Language
XREF Cross Reference