Методология объектного процесса
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Методология объектных процессов ( OPM ) — это язык концептуального моделирования и методология сбора знаний и проектирования систем , определенный как ISO / PAS 19450. [1] Основываясь на минимальной универсальной онтологии объектов состоянием с и процессов , которые их преобразуют, OPM можно использовать для формального определения функций, структуры и поведения искусственных и естественных систем в самых разных областях.
OPM был задуман и разработан Дов Дори . Идеи, лежащие в основе OPM, были впервые опубликованы в 1995 году. [2] С тех пор OPM развивалась и развивалась.
В 2002 году вышла первая книга по OPM. [3] был опубликован, и 15 декабря 2015 г., после шести лет работы над ISO TC184/SC5, ISO приняла OPM как ISO/PAS 19450. [1] Вторая книга по OPM была опубликована в 2016 году. [4]
С 2019 года OPM стал основой программы профессиональных сертификатов в области модельно-ориентированного системного проектирования — MBSE в EdX . Лекции доступны в виде веб-видео на Youtube .
Обзор
[ редактировать ]Методология объектных процессов (OPM) — это язык концептуального моделирования и методология сбора знаний и проектирования систем. Основываясь на минимальной универсальной онтологии объектов состоянием с и процессов , которые их преобразуют, OPM можно использовать для формального определения функций, структуры и поведения искусственных и естественных систем в самых разных областях. Учитывая когнитивные способности человека, модель OPM представляет проектируемую или изучаемую систему в бимодальном виде как в графике, так и в тексте для улучшения представления, понимания, коммуникации и обучения.
В OPM объект — это все, что существует или не существует. Объекты имеют состояние — они могут иметь состояния, так что в каждый момент времени объект находится в одном из своих состояний или в переходе между состояниями. Процесс — это вещь, которая преобразует объект, создавая или потребляя его или изменяя его состояние.
ОПМ является бимодальным; он выражается как визуально/графически в диаграммах объектно-процессов (OPD), так и устно/текстуально на языке объектно-процессов (OPL), наборе автоматически генерируемых предложений на подмножестве английского языка. Запатентованный пакет программного обеспечения OPCAT для создания OPD и OPL доступен бесплатно. [5]
История
[ редактировать ]За переходом к объектно-ориентированной (ОО) парадигме языков программирования , произошедшим в 1980-х и 1990-х годах, последовала идея о том, что программированию должен предшествовать объектно-ориентированный анализ и проектирование программ, и, в более общем плане, системы, которые эти программы представляют и обслуживают. Таким образом, в начале 1990-х годов процветало более 30 методов и нотаций объектно-ориентированного анализа и проектирования, что привело к так называемой «войне методов». [6]
- Дов Дори , «Предисловие», Модельно-ориентированное системное проектирование с использованием OPM и SysML (2017).
Примерно в то же время, в 1991 году, Дов Дори , который затем присоединился к Техниону (израильскому технологическому институту) сказал в качестве преподавателя, в своей книге 2016 года «Системное проектирование на основе моделей с OPM и SysML» , что он:
понял, что как процедурный подход к программному обеспечению был неадекватным, так и «чистый» ОО-подход, который рассматривает объекты как единственные граждане «первого класса», а «методы» (или «сервисы») являются их подчиненными процедурами второго класса. .
- Дов Дори , «Предисловие», Модельно-ориентированное системное проектирование с использованием OPM и SysML (2017).
Дори опубликовала первую статью об OPM в 1995 году. [2]
В 1997 году унифицированный язык моделирования (UML), разработанный Object Management Group (OMG), стал фактическим стандартом проектирования программного обеспечения. UML 1.1 был представлен OMG в августе 1997 года и принят OMG в ноябре 1997 года.
Первая книга по OPM « Методология объектно-процесса: парадигма целостных систем » была опубликована в 2002 году. [3] и с тех пор OPM применяется во многих областях. [7] [8]
В августе 2014 года ISO приняла OPM как ISO/PAS 19450. [1]
Вторая книга по OPM, в которой также рассматривается SysML, была опубликована в 2016 году. [4]
Дизайн
[ редактировать ]Объектно-процессная методология (OPM) — это парадигма системного моделирования, которая объединяет два аспекта, присущих любой системе: ее структуру и ее поведение. Структура представлена через объекты и структурные отношения между ними, такие как агрегирование-участие (отношение целое-часть) и обобщение-специализация («есть-отношение»). Поведение представлено процессами и тем, как они преобразуют объекты: как они создают или потребляют объекты или как они изменяют состояния объекта. [4] : 2
OPM предлагает способ моделирования систем практически любой области, будь то искусственные или естественные. [4] : х [9]
Моделирование
[ редактировать ]OPM состоит из диаграмм объектных процессов (OPD) и соответствующего набора предложений на подмножестве английского языка, называемом Object Process Language (OPL). OPL генерируется автоматически OPCAT, [5] программный инструмент, поддерживающий моделирование в OPM. [10]
- Диаграмма процесса объекта (ОПД)
OPD — это единственная разновидность диаграммы OPM. Эта уникальность типа диаграмм вносит основной вклад в простоту OPM и резко контрастирует с UML, который имеет 14 типов диаграмм, и SysML, который имеет девять таких типов. [11] OPD графически описывает объекты, процессы и связи между ними. Ссылки могут быть структурными и процедурными. Структурные связи соединяют объекты с объектами или процессы с процессами, выражая статический аспект системы — то, как система структурирована. Процедурные связи соединяют объекты с процессами, выражая динамический аспект системы — то, как система меняется с течением времени. Вся система представлена набором иерархически организованных OPD, так что корневой OPD, называемый системной диаграммой (SD), определяет вид системы «с высоты птичьего полета», а OPD более низкого уровня определяют систему на возрастающих уровнях. деталь. Все OPD в наборе OPD системы «знают» друг о друге, каждый из которых отображает систему или ее часть на определенном уровне детализации. Вся система целиком определяется объединением деталей (модельных фактов), встречающихся во всех ОПД.
- Язык объектных процессов (OPL)
Каждая конструкция OPD (т. е. две или более вещей, соединенных одной или несколькими ссылками) переводится в предложение в OPL — подмножестве естественного английского языка. Сила OPL заключается в том, что его могут читать люди, но также интерпретировать компьютеры. На этих этапах принимаются самые важные проектные решения. Бимодальность графики и текста OPM делает его подходящим для совместного моделирования требований командой, в которую входят как заказчик или эксперт в его предметной области, с одной стороны, так и системный архитектор, разработчики моделей и дизайнеры, с другой стороны. [4] : 3
- Анимированная симуляция модели OPM
Модели OPM — это не просто статические графические и текстовые представления системы — они также являются исполняемыми. Правильную модель OPM, построенную в OPCAT, можно смоделировать, анимировав ее, визуально выражая, как система ведет себя с течением времени для достижения своей функции на всех уровнях детализации. Неправильная модель OPM не будет выполняться полностью и укажет, где и почему она зависла, эффективно выступая в качестве визуального отладчика.
Разработка
[ редактировать ]В предисловии к книге Дори «Системное проектирование на основе моделей с использованием OPM и SysML» Эдвард Ф. Кроули сказал:
Семантика OPM изначально была ориентирована на системную инженерию, поскольку она может моделировать информацию, оборудование, людей и регулирование. Однако в последние годы OPM начал служить также исследователям в области молекулярной биологии, предоставив новые опубликованные результаты, связанные с жизненным циклом мРНК. Это ясное свидетельство универсальности объектно-процессной онтологии. [4] : мы [12]
Основы
[ редактировать ]OPM состоит из двух основных частей: языка и методологии. Язык бимодален — он выражается двумя взаимодополняющими способами (модальностями): визуальной, графической частью — набором из одной или нескольких объектно-процессных диаграмм (ОПД) и соответствующей текстовой частью — набором предложений в объектно-процессной форме. язык (OPL), который является подмножеством английского языка.
OPD верхнего уровня — это системная диаграмма (SD), которая обеспечивает контекст для функции системы. Ожидается, что для искусственных систем эта функция будет приносить пользу человеку или группе людей – бенефициару. Функция — это основной процесс в SD, который также содержит объекты, участвующие в этом процессе: бенефициара, операнда (объект, над которым работает процесс) и, возможно, атрибут, значение которого изменяется процессом.
Графические элементы OPM разделены на сущности, выраженные в виде замкнутых фигур, и отношения, выраженные в виде связей, соединяющих сущности.
Сущности
[ редактировать ]Сущности являются строительными блоками OPM. Они включают в себя объекты и процессы, называемые вещами, и состояния объектов.
- Объект
- Ассоциации между объектами составляют объектную структуру моделируемой системы. В тексте OPL имя объекта должно быть выделено жирным шрифтом с заглавными буквами каждого слова.
- Состояние объекта
- Состояние объекта — это определенная классификация ситуации объекта в определенный момент его существования. В каждый момент времени объект находится в одном из своих состояний или в переходе между двумя состояниями — от входного состояния к выходному состоянию.
- Процесс
- Процесс – это выражение закономерности преобразования объектов в системе. Процесс не существует изолированно; оно всегда связано и происходит или случается с одним или несколькими объектами. Процесс преобразует объекты, создавая их, потребляя или изменяя их состояние. Таким образом, процессы дополняют объекты, обеспечивая динамический, поведенческий аспект системы. В тексте OPL имя процесса должно быть выделено жирным шрифтом, каждое слово должно быть написано с заглавной буквы.
Ссылки
[ редактировать ]- Структурная ссылка
- Структурные связи определяют структурное отношение. Структурное отношение должно определять ассоциацию, которая сохраняется в системе, по крайней мере, в течение некоторого интервала времени.
- Процедурная ссылка
- Процедурная ссылка определяет процедурное отношение. Процедурное отношение должно определять, как система работает для достижения своей функции, обозначая зависящий от времени или условный запуск процессов, которые преобразуют объекты.
- Событие и условие
- Парадигма «Событие-Условие-Действие» обеспечивает операционную семантику OPM и поток управления. Событие — это момент времени, в который объект создается (или кажется созданным с точки зрения системы) или объект переходит в заданное состояние. Во время выполнения этот запуск процесса инициирует оценку предварительного условия процесса. Таким образом, начало выполнения процесса имеет две предпосылки: (1) инициирующее событие и (2) выполнение предварительного условия.
Как только событие запускает процесс, оно перестает существовать.
Синтаксис и семантика
[ редактировать ]Вещи
[ редактировать ]Объекты и процессы во многих отношениях симметричны и имеют много общего с точки зрения отношений, таких как агрегирование, обобщение и характеристика.
Чтобы эффективно применять OPM, разработчик модели должен провести существенное различие между объектами и процессами, что является предпосылкой успешного системного анализа и проектирования. По умолчанию существительное идентифицирует объект.
Общие атрибуты вещи
[ редактировать ]У вещей OPM есть три общих атрибута:
- Упорство
- Сущность
- Принадлежность
Общие атрибуты вещей OPM имеют следующие значения по умолчанию:
- Значение по умолчанию Аффилиация» является системным. общего атрибута вещи «
- Сущность системы должна быть первичной сущностью системы. Как и сущность вещи, ее значения информативны и физичны. Информационные системы, в которых большинство вещей являются информационными, должны быть преимущественно информационными, а системы, в которых большинство вещей являются физическими, должны быть преимущественно физическими.
- Значение по умолчанию родового атрибута Сущности вещи в преимущественно информационной [физической] системе должно быть информационным [физическим].
Состояния объекта
[ редактировать ]- Объекты с состоянием и без состояния
- Дов Дори объясняет в книге « Системное проектирование на основе моделей с использованием OPM и SysML» , что «Состояние объекта — это возможная ситуация, в которой объект может существовать. Состояние объекта имеет значение только в контексте объекта, которому оно принадлежит». Объект без состояния — это объект, у которого нет спецификации состояний. Объект с состоянием — это объект, для которого указан набор допустимых состояний. В модели времени выполнения в любой момент времени любой экземпляр объекта с состоянием находится в определенном допустимом состоянии или находится в переходном состоянии между двумя состояниями.
- Значения атрибутов
- Атрибут – это объект, характеризующий вещь. Значение атрибута — это специализация состояния в том смысле, что значение — это состояние атрибута: объект имеет атрибут, который является другим объектом, которому это значение присваивается на некоторый период времени в течение существования объекта. демонстрируя этот атрибут.
- Представление состояния объекта
- Состояние графически определяется помеченным прямоугольником с закругленными углами, помещенным внутри объекта-владельца. Оно не может жить без объекта. В тексте OPL название штата должно быть выделено жирным шрифтом без использования заглавных букв.
- Начальное, стандартное и конечное состояния
- Представление начального, конечного состояния и состояния по умолчанию
- Исходное состояние графически определяется представлением состояния с толстым контуром. Окончательное состояние графически определяется представлением состояния с двойным контуром. Состояние по умолчанию графически определяется представлением состояния с открытой стрелкой, направленной по диагонали слева. Соответствующие предложения OPL должны включать явные индикаторы начального, конечного состояния или состояния по умолчанию.
Ссылки
[ редактировать ]Процедурные ссылки
[ редактировать ]Процедурная ссылка бывает одного из трех видов:
- Ссылка преобразования , которая соединяет преобразователь (объект, который преобразует процесс) или его состояние с процессом для моделирования преобразования объекта, а именно генерации, потребления или изменения состояния этого объекта в результате выполнения процесса.
- Включающая ссылка , которая подключает активатор (объект, который обеспечивает возникновение процесса, но не преобразуется этим процессом) или его состояние, к процессу, который обеспечивает возникновение этого процесса.
- Управляющая ссылка — процедурная (преобразующая или включающая) ссылка с управляющим модификатором — буквой е (для события) или с (для условия), добавляющим семантику управляющего элемента. Буква e обозначает событие запуска связанного процесса, а буква c обозначает условие выполнения связанного процесса или соединение двух процессов, обозначающее вызов или исключение.
- Принцип уникальности процедурной ссылки OPM
- Процессу необходимо преобразовать хотя бы один объект. Следовательно, процесс должен быть связан трансформирующей связью хотя бы с одним объектом или состоянием объекта. На любой конкретной степени абстракции объект или любое из его состояний должны играть ровно одну роль в качестве элемента модели по отношению к процессу, с которым он связан: объект может быть преобразователем или активатором. Кроме того, это может быть триггер события (если оно имеет модификатор управления e), или объект кондиционирования (если оно имеет модификатор управления c), или и то, и другое.
- Установленные государством процедурные связи
- Процедурная ссылка с указанием состояния представляет собой подробную версию своего аналога процедурной ссылки, поскольку она не соединяет процесс с объектом, а соединяет процесс с определенным состоянием этого объекта.
- Преобразование ссылок
- Три вида преобразующих связей:
- Связь потребления : графически стрелка с закрытым наконечником, указывающая от потребителя к процессу потребления, определяет ссылку потребления. По предположению, потребляемый объект исчезает, как только процесс начинает выполнение. Синтаксис предложения OPL ссылки потребления: Обработка потребляет Потребляемого.
- Ссылка на эффект : преобразующая ссылка, указывающая, что связанный процесс влияет на связанный объект, который является объектом воздействия, т. е. процесс вызывает некоторые неопределенные изменения в состоянии объекта воздействия. Графически связь эффекта должна определять двунаправленная стрелка с двумя закрытыми наконечниками, по одной в каждом направлении между влияющим процессом и затронутым объектом. Синтаксис предложения OPL ссылки на эффект следующий: Обработка влияет на объект воздействия.
- Ссылка на результат : графически стрелка с закрытым наконечником, указывающая от процесса создания к получателю результата, должна определять ссылку на результат. Синтаксис предложения OPL ссылки на результат: Обработка дает результат.
- Включение ссылок
- Включающая ссылка — это процедурная ссылка, определяющая активатор для процесса — объект, который должен присутствовать для того, чтобы этот процесс состоялся, но существование и состояние этого объекта после завершения процесса такие же, как и перед началом процесса. Два типа активирующих ссылок:
- Агент и агентская связь : человек или группа людей, способных принимать разумные решения, которые активируют процесс, взаимодействуя с системой, чтобы активировать или контролировать процесс на протяжении всего выполнения. Графически линия с закрашенным кружком («черный леденец») на конце терминала, идущая от объекта агента к процессу, который он активирует, определяет ссылку агента. Синтаксис предложения OPL связи агента следующий: Агент обрабатывает обработку.
- Инструмент и связь с инструментом : неодушевленный или иным образом не принимающий решения фактор, способствующий процессу, который не может начаться или иметь место без существования и доступности инструмента.
- Трансформирующие связи с указанием состояния
- Ссылка потребления, определяемая состоянием : ссылка потребления, которая возникает из определенного состояния потребителя. Это означает, что потребитель должен находиться в этом состоянии, чтобы он мог быть использован процессом, с которым он связан. Графически стрелка с закрытым наконечником, указывающая от конкретного состояния объекта к процессу, который потребляет объект, определяет ссылку потребления, определяемую состоянием.
- Ссылка на результат, определяемая состоянием : ссылка на результат, которая завершается в определенном состоянии получателя результата, что означает, что получатель результата должен находиться в этом результирующем состоянии при его создании. Графически стрелка с закрытым наконечником, указывающая от процесса к конкретному состоянию объекта, определяет ссылку на результат, указанную в состоянии. Синтаксис предложения OPL следующий: Процесс дает объект с квалифицированным состоянием.
- Ссылки на эффекты, определяемые состоянием :
- Ссылки на входные и выходные эффекты. Входная ссылка — это ссылка от входного состояния объекта на процесс преобразования, а выходная ссылка — это ссылка от процесса преобразования на выходное состояние объекта.
- Ссылка на эффект, определяемый вводом-выводом: пара ссылок на эффект, где входная ссылка исходит из определенного состояния объекта воздействия, а выходная ссылка возникает из этого процесса и заканчивается в выходном состоянии того же самого объекта воздействия. Графически пара стрелок с закрытым наконечником, идущая от входного состояния объекта воздействия к влияющему процессу, и аналогичная стрелка от этого процесса к состоянию объекта воздействия при завершении процесса определяют связь эффекта, заданную вводом-выводом. Синтаксис предложения OPL следующий: Процесс изменяет объект из входного состояния в выходное состояние.
- Ссылка на эффект, указанный на входе: пара ссылок на эффект, где входная ссылка исходит из определенного состояния объекта воздействия, а выходная ссылка возникает из этого процесса и заканчивается на объекте воздействия без указания конкретного состояния. Графически пара стрелок, состоящая из стрелки с закрытым наконечником, ведущей от определенного состояния (входного состояния) объекта воздействия к процессу, и аналогичной стрелки от этого процесса к объекту воздействия, но не к какому-либо из его состояний, определяет Ссылка на эффект, указанный на входе. Синтаксис предложения OPL следующий: Процесс изменяет объект из входного состояния.
- Ссылка на эффект, определяемый выходом: пара ссылок на эффект, где входная (исходная) ссылка исходит от объекта воздействия, а выходная ссылка исходит из процесса и завершается в выходном (назначающем, результирующем) состоянии того же объекта воздействия. Графически — пара стрелок, состоящая из стрелки с замкнутым наконечником от пострадавшего, но не от какого-либо из его состояний, к воздействующему процессу и аналогичной стрелки от этого процесса к определенному состоянию этого пострадавшего — выходному состоянию. — определяет ссылку на эффект, указанный на выходе.
- Установленные государством активирующие ссылки
- Возникают из определенного квалифицируемого состояния и завершаются в процессе. Это означает, что процесс может произойти тогда и только тогда, когда объект существует в том состоянии, из которого возникла ссылка.
- Ссылка агента с указанием состояния : графически линия с заполненным кружком («черный леденец») на конце терминала, простирающаяся от квалифицирующего состояния объекта агента до процесса, который он активирует, определяет ссылку агента с указанием состояния. Синтаксис предложения OPL следующий: Агент квалифицирующего состояния обрабатывает обработку.
- Ссылка на инструмент, определяемый государством : ссылка на инструмент, происходящая из определенного квалификационного состояния инструмента. Графически линия с пустым кружком («белый леденец») на конце терминала, простирающаяся от квалифицирующего состояния объекта инструмента до процесса, который он активирует, определяет ссылку на инструмент с указанием состояния. Синтаксис предложения OPL следующий: Для обработки требуется инструмент с уточняющим состоянием.
Управление событием-условием-действием
[ редактировать ]- Набор объектов предварительной обработки и предварительное условие обработки
- Чтобы процесс OPM начал выполняться после его запуска, ему необходим набор объектов, включающих одно или несколько потребляний, некоторые из которых, возможно, находятся в определенных состояниях и/или воздействиях, которые в совокупности называются набором объектов предварительной обработки. При выполнении на уровне экземпляра каждое потребление B в наборе объектов предварительной обработки процесса P должно быть использовано и прекратить свое существование в начале подпроцесса самого низкого уровня P, который потребляет B. Каждый затронутый (объект, состояние которого изменяется ) B в наборе объектов предварительной обработки процесса P должен выйти из своего входного состояния в начале подпроцесса самого низкого уровня P.
- Набор объектов постобработки и пост-условие обработки
- Набор объектов, включающий один или несколько результатов, некоторые из которых, возможно, находятся в заданных состояниях и/или воздействиях, вместе называемые набором объектов постобработки, должен быть результатом выполнения процесса и выполнения преобразований, связанных с его выполнением. Каждый полученный B в наборе объектов постобработки процесса P должен быть создан и начать существовать в конце подпроцесса самого низкого уровня P, который дает B. Каждый затронутый B в наборе объектов постобработки процесса P должен войти в свой состояние вывода в конце подпроцесса самого низкого уровня P.
Ссылки управления
[ редактировать ]Ссылка на событие и ссылка на условие выражают событие и условие соответственно. Ссылки управления возникают либо между объектом и процессом, либо между двумя процессами.
- Ссылки на мероприятия
- Запуск процесса инициирует попытку выполнить процесс, но не гарантирует успех этой попытки. Инициирующее событие вызывает оценку предварительного условия процесса для удовлетворения, которое, если и только если оно удовлетворено, позволяет продолжить выполнение процесса и процесс становится активным. Независимо от того, выполнено предварительное условие или нет, событие будет потеряно. Если предварительное условие не выполнено, выполнение процесса не произойдет до тех пор, пока другое событие не активирует процесс и успешная оценка предварительного условия не позволит процессу выполниться.
- Базовые ссылки на события преобразования . Ссылка на событие потребления — это связь между объектом и процессом, который активирует экземпляр объекта.
- Ссылка на событие потребления: графически стрелка с закрытым наконечником, указывающая от объекта к процессу с маленькой буквой е (для события). Синтаксис предложения OPL ссылки на событие потребления следующий: Объект запускает процесс, который потребляет объект.
- Ссылка на событие эффекта: графически двунаправленная стрелка с закрытыми стрелками на каждом конце между объектом и процессом с маленькой буквой e (событие). Синтаксис предложения OPL ссылки на событие эффекта следующий: Объект запускает Процесс, который влияет на Объект.
- Основные ссылки на активирующие события :
- Ссылка на событие агента. Ссылка на событие агента — это активирующая ссылка от объекта агента к процессу, который он активирует и включает. Графически линия с закрашенным кружком («черный леденец») на конце терминала, идущая от объекта агента к процессу, который он активирует и включает, с маленькой буквой e (для события). Синтаксис предложения OPL ссылки на событие агента следующий: Агент запускает и обрабатывает процесс.
- Ссылка на событие инструмента: графически линия с пустым кружком («белый леденец») на конце терминала, идущая от объекта инструмента к процессу, который он активирует и включает, с маленькой буквой e (для события). Синтаксис события инструмента. ссылка Предложение OPL: Инструмент запускает Процесс, для которого требуется Инструмент.
- Ссылки на события преобразования, определяемые состоянием :
- Ссылка на событие потребления с указанием состояния. Ссылка на событие потребления с указанием состояния — это ссылка потребления, которая возникает из определенного состояния объекта и завершается в процессе, который активируется экземпляром объекта. Графически стрелка с закрытым наконечником, указывающая от состояния объекта к процессу с маленькой буквой е (для события). Синтаксис предложения OPL ссылки на событие потребления с указанием состояния: Объект с указанным состоянием запускает Процесс, который потребляет Объект.
- Ссылка на событие эффекта, заданного вводом-выводом: Ссылка на событие эффекта, заданного вводом-выводом, представляет собой ссылку на эффект, указанный вводом-выводом, с дополнительным значением активации влияющего процесса, когда объект входит в указанное состояние ввода. Графически ссылка на эффект ввода-вывода указывается маленькой буквой е (событие). Синтаксис предложения OPL связи события с заданным эффектом ввода-вывода следующий: Объект входного состояния запускает Процесс, который изменяет Объект из входного состояния в выходное состояние.
- Ссылка на событие эффекта, заданного входом. Ссылка на событие эффекта, заданного входом, — это ссылка на эффект, указанный входом, с дополнительным значением активации влияющего процесса, когда объект входит в указанное входное состояние. Графически ссылка на эффект, указанная на входе, обозначается маленькой буквой e (для события). Синтаксис предложения OPL ссылки на событие эффекта, указанного на входе, следующий: Объект входного состояния запускает процесс, который изменяет объект из входного состояния.
- Ссылка на событие эффекта, заданного выходом: Ссылка на событие эффекта, заданного выходом, представляет собой ссылку на эффект, заданный выходом, с дополнительным значением активации влияющего процесса при появлении объекта. Графически ссылка на эффект, указанный на выходе, пишется маленькой буквой e (событие). Синтаксис предложения OPL ссылки на событие эффекта, заданного на выходе, следующий: Объект в любом состоянии запускает Процесс, который изменяет Объект в состояние назначения.
- Ссылка на событие агента, указанное в штате :
- Ссылка на событие агента с указанием состояния. Ссылка на событие агента с указанием состояния — это ссылка агента с указанием состояния, имеющая дополнительное значение активации процесса, когда агент входит в указанное состояние. Графически ссылка агента, указанная в штате, обозначается маленькой буквой e (событие). Синтаксис предложения OPL ссылки на событие агента с указанием состояния: Агент с соответствующим состоянием запускает и обрабатывает обработку».
- Ссылка на событие инструмента с указанием состояния: Ссылка на событие инструмента с указанием состояния — это ссылка на инструмент с указанием состояния, имеющая дополнительное значение активации процесса, когда прибор входит в указанное состояние. Графически указанный государством инструмент связан с маленькой буквой е (событие). Синтаксис предложения OPL ссылки на событие инструмента с указанием состояния: Инструмент с квалификационным состоянием запускает обработку, для которой требуется Инструмент с квалификационным состоянием».
- Ссылки для вызова
- Вызов процесса
- Ссылка для самостоятельного вызова
- Ссылка на неявный вызов : неявный вызов происходит после завершения подпроцесса в контексте увеличенного процесса, при этом подпроцесс вызывает тот или иной процесс, находящийся непосредственно под ним. Графически между вызывающим и вызываемым подпроцессами нет связи; их относительные высоты в масштабе их родительского процесса подразумевают эту семантику.
- Ссылки на условия
- Ссылка на условие — это процедурная ссылка между исходным объектом или состоянием объекта и целевым процессом, обеспечивающая механизм обхода.
- Ссылка потребления условий . Ссылка потребления условий — это ссылка условия от объекта к процессу. Это означает, что если во время выполнения экземпляр объекта существует, то предварительное условие процесса удовлетворено, процесс выполняется и потребляет экземпляр объекта. Графически стрелка с закрытым наконечником, направленная от объекта к процессу с маленькой буквой с (условие) возле наконечника, будет обозначать ссылку потребления условия.
- Ссылка на эффект условия : Однако, если этот экземпляр объекта не существует, оценка предварительного условия процесса завершается неудачно, и элемент управления пропускает процесс. Графически это двунаправленная стрелка с двумя закрытыми наконечниками, по одному в каждом направлении между затронутым объектом и воздействующим процессом, с маленькой буквой c (обозначающей состояние) рядом с концом стрелки процесса.
- Ссылка агента условия : графически линия с заполненным кругом («черный леденец») на конце терминала, идущая от объекта агента к процессу, который он активирует, с маленькой буквой c (условие) рядом с концом процесса. Синтаксис предложение OPL связи агента с условием: Агент обрабатывает процесс , если агент существует, в противном случае процесс пропускается.
- Ссылка на инструмент состояния : графически линия с пустым кружком («белый леденец») на конце терминала, простирающаяся от объекта инструмента до процесса, который он запускает, с маленькой буквой c (для условия) рядом с концом процесса, должна обозначать ссылка на инструмент состояния. Синтаксис предложения OPL ссылки на инструмент условия должен быть следующим: Процесс происходит, если инструмент существует, в противном случае процесс пропускается.
- Ссылка потребления с указанием состояния условия . Ссылка потребления с указанием состояния условия — это ссылка потребления с указанием состояния, которая возникает из заданного состояния объекта и завершается в процессе. Это означает, что если экземпляр объекта существует в указанном состоянии, а остальная часть Предварительное условие процесса удовлетворено, затем процесс выполняется и потребляет экземпляр объекта. Графически стрелка с закрытым наконечником, указывающая от состояния квалификации объекта к процессу, с маленькой буквой c (условие) рядом с наконечником.
- Ссылка на эффект, заданный вводом-выводом условия : Ссылка на эффект, заданный вводом-выводом, представляет собой ссылку на эффект, заданный вводом-выводом, с дополнительным значением, что если во время выполнения экземпляр объекта существует и находится в состоянии ввода процесса (и если предположить, что остальная часть предварительного условия процесса удовлетворена), то процесс выполняется и влияет на экземпляр объекта. Графически эффект, заданный вводом-выводом, связан с маленькой буквой c (условие) рядом со стрелкой ввода. Синтаксис предложения OPL ссылки эффекта, заданного входом-выходом, следующий: Процесс происходит, если Объект находится в состоянии ввода, и в этом случае Процесс меняет Объект из состояния ввода в состояние вывода, в противном случае Процесс пропускается.
- Ссылка на эффект, указанный входными данными условия : Ссылка на эффект, указанный входными данными условия, представляет собой ссылку на эффект, указанную входными данными, с дополнительным значением, что если во время выполнения экземпляр объекта существует в указанном входном состоянии и остальная часть предварительного условия процесса удовлетворена, то процесс выполняется и влияет на экземпляр объекта, изменяя его состояние с входного состояния на неопределенное состояние. Однако если этот экземпляр объекта не существует во входном состоянии, то оценка предварительного условия процесса завершается неудачно, и элемент управления пропускает процесс. Графически ссылка на эффект, указанная входными данными условия, отмечена маленькой буквой c (условие) рядом со стрелкой входной ссылки. Синтаксис предложения OPL ссылки эффекта, заданного входными данными, следующий: Процесс происходит, если Объект находится в состоянии ввода, и в этом случае Процесс изменяет Объект из состояния ввода, в противном случае Процесс пропускается.
- Ссылка на эффект, указанный на выходе условия . Ссылка на эффект, указанный на выходе условия, представляет собой ссылку на эффект, указанный на выходе, с дополнительным значением, что если во время выполнения экземпляр объекта существует и остальная часть предварительного условия процесса удовлетворена, то процесс выполняется и влияет на экземпляр объекта, изменяя его состояние на указанное выходное состояние. Однако если этот экземпляр объекта не существует, то оценка предварительного условия процесса завершается неудачно, и элемент управления пропускает процесс. Графически ссылка на эффект, указанная на выходе условия, отмечена маленькой буквой c (условие) рядом со стрелкой входной ссылки. Синтаксис предложения OPL эффекта, заданного условием, следующий: Процесс происходит, если объект существует, и в этом случае процесс изменяет объект на выходное состояние , в противном случае процесс пропускается.
- Ссылка агента с указанием состояния условия : Синтаксис предложения OPL ссылки агента с указанием состояния состояния: Агент обрабатывает процесс , если агент находится в квалифицирующем состоянии , в противном случае процесс пропускается.
- Ссылка на инструмент, указанный в состоянии
Дополнительную информацию и примеры можно найти в разделе «Системное проектирование на основе моделей с использованием OPM и SysML» , глава 13 «Аспект динамической системы». [4]
Структурные связи
[ редактировать ]Структурные связи определяют статические, независимые от времени и долговременные отношения в системе. Структурная связь связывает два и более объекта или два и более процесса, но не объект и процесс, за исключением случая выставки-характеристики.
- Однонаправленная структурная ссылка с тегами
- Имеет определяемую пользователем семантику относительно характера связи одного объекта с другим. Графически стрелка с открытым наконечником. Вдоль структурной связи с тегами разработчик модели должен записать значимый тег в виде текстовой фразы, которая выражает природу структурных отношений между связанными объектами (или процессами) и имеет смысл при помещении в предложение OPL, синтаксис которого следует.
- Однонаправленная структурная ссылка с нулевым тегом
- Однонаправленная структурная ссылка с тегами без тегов. В этом случае используется однонаправленный тег по умолчанию. Разработчик моделей имеет возможность установить однонаправленный тег по умолчанию для конкретной системы или набора систем. Если значение по умолчанию не определено, тегом по умолчанию является «относится к».
- Двунаправленная структурная ссылка с тегами
- Когда теги в обоих направлениях имеют смысл, а не просто являются обратными друг другу, они могут быть записаны двумя тегами по обе стороны от одной двунаправленной структурной связи с тегами. Синтаксис результирующей структурной ссылки с тегами представляет собой два отдельных предложения OPL с тегами структурной ссылки, по одному для каждого направления. Графически это линия со стрелками в форме гарпуна на противоположных сторонах на обоих концах линии звена.
- Взаимная помеченная структурная ссылка
- Структурная ссылка с двунаправленной маркировкой и одним тегом. В любом случае взаимность указывает на то, что тег двунаправленной структурной ссылки имеет одинаковую семантику для ее прямого и обратного направлений. Если тег не отображается, тег по умолчанию должен быть «связаны». Синтаксис структурной связи с взаимными тегами только с одним тегом должен быть следующим: Исходная вещь и целевая вещь являются тегом взаимности. Синтаксис взаимной структурной ссылки с тегами без тега: Исходная вещь и целевая вещь связаны.
- Фундаментальные структурные отношения
- Наиболее распространенные структурные отношения между вещами OPM, имеющие особое значение для спецификации и понимания систем. Каждое из фундаментальных отношений разрабатывает или уточняет одну вещь OPM, исходную вещь или очищаемую вещь, в коллекцию из одной или нескольких вещей OPM, целевую вещь или вещи или уточняемые объекты.
- Ссылка агрегирования-участия
- Перерабатываемый продукт – целое – объединяет один или несколько других перерабатываемых продуктов – части. Графически черным сплошным (закрашенным) треугольником, вершина которого соединяется линией с целым, а частями, соединяющимися линиями с противоположным горизонтальным основанием, будет обозначаться связь отношений агрегирования-участия.
- Ссылка на описание выставки
- Вещь демонстрирует или характеризуется другой вещью. Отношение выставка-характеристика связывает очищенного — экспонента — с одним или несколькими уточняемыми объектами, которые должны идентифицировать особенности, характеризующие экспонента. Графически: меньший черный треугольник внутри большего пустого треугольника, вершина которого соединена линией с экспонентом и признаки, соединяющиеся с противоположным (горизонтальным) основанием, определяют связь отношения выставка-характеристика.
- Обобщение-специализация и наследование
- Это структурные отношения, которые позволяют абстрагировать любое количество объектов или классов процессов в суперклассы и присваивать атрибуты суперклассов подчиненным классам.
- Связь обобщения-специализации
- Наследование через специализацию
- Ограничение специализации посредством различающего атрибута : подмножество возможных значений унаследованного атрибута может ограничивать специализацию.
- Создание экземпляра классификации и выполнение системы
- Связь классификации-экземпляра : Исходная вещь, которая представляет собой класс объекта или класс процесса, соединенная с одной или несколькими целевыми вещами, которые являются ценными экземплярами шаблона исходной вещи, то есть функции, указанные шаблоном, приобретают явные значения. Это отношение предоставляет разработчику модели явный механизм для выражения отношений между классом и его экземплярами, созданными путем предоставления значений функций. Графически маленький черный кружок внутри пустого большего треугольника с вершиной, соединяющейся линией с объектом класса, и объектами экземпляра, соединяющимися линиями с противоположным основанием, определяет связь отношения классификации и создания экземпляра. Синтаксис: Экземпляр-вещь является экземпляром Класс-вещи.
- Экземпляры класса объекта и класса процесса
- Государственные структурные отношения и связи
- Отношение характеристики и связь, определяемые государством : Отношение проявления-характеристики специализированного объекта, которое демонстрирует значение различительного атрибута этого объекта, что означает, что специализированный объект должен иметь только это значение. Графически треугольный символ связи выставки-характеристики, вершина которого соединена со специализированным объектом, а противоположное основание - со значением, определяет отношение характеристики, определенное состоянием. Синтаксис следующий: Специализированный-объект отображает имя-значение Имя-атрибута.
- Структурные отношения и связи с тегами, определяемыми состоянием : Структурное отношение между состоянием объекта или значением атрибута и другим объектом или его состоянием или значением, что означает, что эти два объекта связаны с тегом, выражающим семантику ассоциации. В случае нулевого тега (т. е. тег не указан) используется соответствующий нулевой тег по умолчанию. Существуют три группы тегированных структурных отношений, определяемых состоянием: (1) тегированные структурные отношения, определяемые исходным состоянием, (2) тегированные структурные отношения, определяемые состоянием назначения, (3) тегированные структурные отношения, определяемые состоянием источника и назначения. Каждая из этих групп включает в себя соответствующие однонаправленные, двунаправленные и взаимные тегированные структурные отношения, что дает начало семи типам тегированных структурных отношений, определяемых состоянием, и соответствующим предложениям OPL.
Дополнительную информацию и примеры можно найти в разделе «Системное проектирование на основе моделей с помощью OPM и SysML» , глава 3.3 «Добавление структурных связей». [4]
Мощность отношений
[ редактировать ]- Множественность объектов в структурных и процедурных связях
Множественность объектов должна относиться к спецификации требования или ограничения на количество или количество экземпляров объекта, связанных со ссылкой. Если не указана спецификация множественности, каждый конец ссылки должен указывать только один экземпляр объекта. Синтаксис предложения OPL, которое включает объект с кратностью, должен включать кратность объекта, предшествующую имени объекта, при этом имя объекта появляется во множественном числе. Спецификация кратности может появиться в следующих случаях:
- указать несколько экземпляров исходного или целевого объекта для помеченной структурной ссылки любого типа;
- указать объект-участник с несколькими экземплярами в ссылке агрегации-участия, где к каждой части целого может быть прикреплена другая спецификация участия;
- чтобы указать объект с несколькими экземплярами в процедурном отношении.
- Выражения и ограничения множественности объектов
Множественность объектов может включать арифметические выражения, в которых должны использоваться символы операторов «+», «–», «*», «/», «(» и «)» с их обычной семантикой и должно использоваться обычное текстовое соответствие в соответствующие предложения OPL.
Целое число или арифметическое выражение могут ограничивать множественность объектов. Графически ограничения выражений должны отображаться после точки с запятой, отделяющей их от выражения, которое они ограничивают, и должны использовать символы равенства/неравенства "=", "<", ">", "<=" и ">=", фигурные фигурные скобки «{» и «}» для включения членов множества и оператор членства «in» (элемент, ∈), все со своей обычной семантикой. В соответствующем предложении OPL фраза ограничения должна быть выделена жирным шрифтом после объекта, к которому применяется ограничение, в форме «где ограничение».
- Значение атрибута и ограничения множественности
Выражение множественности объектов для структурных и процедурных связей задает целочисленные значения или символы параметров, которые разрешаются в целочисленные значения. Напротив, значения, связанные с атрибутами объектов или процессов, могут быть целочисленными или вещественными значениями или символами параметров, которые разрешаются в целочисленные или вещественные значения, а также строками символов и перечисляемыми значениями. Графически маркированный прямоугольник с закругленными углами, помещенный внутри атрибута, которому он принадлежит, должен обозначать значение атрибута со значением или диапазоном значений (целые числа, действительные числа или строковые символы), соответствующим имени метки. В тексте OPL значение атрибута должно отображаться жирным шрифтом без использования заглавных букв.
объекта со значением атрибута предложения OPL должен быть следующим: Атрибут объекта Синтаксис — значение .
Синтаксис объекта с предложением OPL диапазона значений атрибута должен быть следующим: Атрибут диапазона объекта — диапазон значений . Структурная или процедурная ссылка, соединяющаяся с атрибутом, имеющим действительное числовое значение, может задавать ограничение отношения, отличное от множественности объекта.
Графически ограничение значения атрибута представляет собой аннотацию в виде числа, целого или вещественного значения, или параметра-символа, расположенного рядом с концом атрибута ссылки и совмещенного со ссылкой.
Логические операторы: AND, XOR и OR.
[ редактировать ]- Логические И процедурные связи
Логические операторы AND, XOR и OR среди процедурных отношений позволяют специфицировать тщательно продуманные предусловия и постусловия процесса. Отдельные, не соприкасающиеся ссылки должны иметь семантику логического И.Здесь для открытия сейфа необходимы все три ключа.
- Логические процедурные связи XOR и OR
Веер ссылок должен следовать семантике оператора XOR или OR. Конец веера каналов, общий для всех каналов, должен быть концом сходящегося канала. Конец ссылки, который не является общим для ссылок, должен быть расходящимся концом ссылки.
Оператор XOR должен означать, что ровно одна из вещей в диапазоне веера ссылок существует, если на расходящемся конце ссылки есть объекты, или происходит, если на расходящемся конце ссылки есть процессы. Графически пунктирная дуга, пересекающая ссылки в веере ссылок с фокальной точкой дуги в сходящейся конечной точке контакта, должна обозначать оператор XOR.
Оператор OR должен означать, что по крайней мере одна из двух или более вещей в диапазоне веера ссылок существует, если на расходящемся конце ссылки есть объекты, или происходит, если на расходящемся конце есть процессы. Графически две концентрические пунктирные дуги, пересекающие связи с фокусом в сходящейся конечной точке контакта, обозначают оператор ИЛИ.
- Определенные государством поклонники ссылок XOR и OR
- Фанаты ссылок с измененным управлением
- Вероятности ссылок и вероятностные любители ссылок
- Путь выполнения и метки пути
- Метка пути должна быть меткой вдоль процедурной ссылки, которая в случае, если существует более одного варианта перехода после завершения процесса, предписывает, что ссылка для перехода будет иметь ту же метку, что и та, которую мы ввели. процесс.
Принципы моделирования и понимание модели
[ редактировать ]Определение цели, объема и функции системы с точки зрения границ, заинтересованных сторон и предварительных условий является основой для определения того, должны ли в модели появляться другие элементы. Это определяет область применения системной модели.OPM предоставляет механизмы абстрагирования и уточнения для управления выражением ясности и полноты модели. [1] [4]
- Идентификация заинтересованных сторон и бенефициара системы
Ожидается, что для искусственных систем эта функция будет приносить пользу человеку или группе людей – бенефициару. После того как функция системы приводится в соответствие с ожиданием функциональной ценности ее основного бенефициара, разработчик модели идентифицирует и добавляет в модель OPM других основных заинтересованных сторон.
- Схема системы
В результате OPD верхнего уровня представляет собой системную диаграмму (SD), которая включает группу заинтересованных сторон, в частности группу бенефициаров, и дополнительные элементы окружающей среды верхнего уровня, которые обеспечивают контекст для работы системы. SD должен содержать только центральные и важные вещи, необходимые для понимания функции и контекста системы. Функция — это основной процесс в SD, который также содержит объекты, участвующие в этом процессе: бенефициара, операнда (объект, над которым работает процесс) и, возможно, атрибут операнда, значение которого изменяется процессом. SD также должен содержать объект, представляющий систему, которая включает эту функцию. Имя этой системы по умолчанию создается путем добавления слова «Система» к имени функции. Например, если функция — «Покраска автомобилей», имя системы будет «Система покраски автомобилей».
- Дерево ОПД
- Компромисс ясности и полноты
Установление соответствующего баланса требует тщательного управления контекстом во время разработки модели. Однако разработчик модели может воспользоваться преимуществом объединения информации, предоставляемой всем набором OPD модели системы OPM, и иметь один OPD, который является ясным и недвусмысленным, но не полным, а другой, ориентированный на полноту для некоторой меньшей части системы, за счет добавив больше деталей.
- Механизмы уточнения-абстракции
OPM должен предоставлять механизмы абстрагирования и уточнения для управления выражением ясности и полноты модели. Эти механизмы должны позволять представлять и рассматривать систему и составляющие ее вещи в различных контекстах, связанных между собой общими между ними объектами, процессами и отношениями.
- Государственное выражение и государственное подавление
Обратной стороной подавления состояния должно быть выражение состояния, т. е. уточнение OPD путем добавления информацииотносительно возможных состояний объекта. OPL, соответствующий OPD, должен выражать только состоянияпредметы, которые изображены.
- Раскладывание и складывание
Он раскрывает набор вещей, которые иерархически находятся ниже развернутой вещи. В результате получается иерархическое дерево, корнем которого является развернутая вещь. С корнем связаны вещи, составляющие контекст развернутой вещи. И наоборот, свертывание — это механизм абстракции или композиции, который применяется к развернутому иерархическому дереву.
- Увеличение и уменьшение масштаба
Увеличение масштаба — это своего рода развертывание, которое применимо только к агрегированию-участию и имеет дополнительную семантику. Для процессов увеличение масштаба позволяет моделировать подпроцессы, их временной порядок, их взаимодействие с объектами и передачу управления в этот контекст и из него. Для объектов увеличение масштаба создает особый контекст, который позволяет моделировать пространственный или логический порядок составляющих объектов. Графически временная шкала в контексте увеличенного процесса течет от верхней части символа эллипса процесса к нижней части эллипса.
Метамоделирование
[ редактировать ]- Структура модели OPM
- Модель конструкции OPD и базовая конструкция
Модель, как видно на изображении метамодели OPD, развивает концепцию OPD Construct. Цель этой модели — отличить базовую конструкцию от другой возможной конструкции OPD. Базовая конструкция — это специализация конструкции OPD, которая состоит ровно из двух Вещей, соединенных ровно одной Связью. К небазовым конструкциям относятся, среди прочего, те, у которых есть поклонники ссылок или более двух уточнений.
Разработчик модели может добавить процесс в модель, добавив состояния «отключено» и «подключено» из набора вещей.Таким образом, цель модели включает в себя действие по преобразованию несвязанного набора вещей в связанный набор вещей с использованием набора связей в качестве инструмента соединения.
- OPM-модель вещи
Модель вещи OPM — это модель вещи OPM, показывающая ее специализацию на объект и процесс, как показано на изображении модели вещи ниже. Набор состояний характеризует объект, который может быть пустым в случае объекта без состояния или непустым в случае объекта с состоянием.
Объект с состоянием с s состояниями порождает набор s объектов, специфичных для состояния, без состояния, по одному для каждого состояния.Конкретный объект, зависящий от состояния, относится к объекту, находящемуся в определенном состоянии. Моделирование концепции объекта, специфичного для состояния, как объекта и состояния, позволяет упростить концептуальную модель, ссылаясь на объект и любое одно или его состояния, просто указав объект.
- OPM-модель общих свойств вещи
Модель OPM родовых свойств Вещи изображает Вещь и ее родовые свойства Настойчивость, Сущность и Принадлежность, смоделированные как уточнения атрибутов связи выставка-характеристика. Настойчивость — это отличительный признак между Объектом и Процессом.
- Модели с увеличением и уменьшением масштаба
Как увеличение масштаба новой диаграммы, так и уменьшение масштаба новой диаграммы создают новый контекст OPD из существующего контекста OPD. Увеличение масштаба новой диаграммы начинается с OPD с относительно меньшим количеством деталей и добавляет детализацию или уточнение в качестве потомка OPD, который применяется к конкретной вещи в менее подробном OPD.
Версии
[ редактировать ]- ОПМ
Текущая версия OPM — ISO/PAS 19450:2015, как указано в документе «Системы автоматизации и интеграция — методология объектно-процессного процесса». [1] Спецификация в книге Дори 2016 года представляет собой расширенную версию ISO/PAS 19450:2015. [4]
Предыдущая версия OPM была указана в книге Дори 2002 года. [3]
- ФПКПП
Текущая версия OPCAT — 4.1. Его можно бесплатно получить в Лаборатории моделирования корпоративных систем Техниона. [5]
Предыдущая версия OPCAT, 3.1, с меньшими возможностями, также доступна на том же сайте. Оба написаны на Java. Первая версия OPCAT, OPCAT 1.X, была написана на Visual C++ в 1998 году.
В начале 2016 года команда студентов под руководством Дори начала работу над новым поколением OPCAT, которое будет называться OPCloud. [13] Как следует из названия программного обеспечения, это будет облачное приложение, которое позволит пользователям создавать модели OPM с помощью веб-приложения. [14]
Стандартизация
[ редактировать ]ISO — Международная организация по стандартизации — является независимой неправительственной международной организацией, в которую входят 162 национальных органа по стандартизации, которая разрабатывает добровольные, основанные на консенсусе и актуальные для рынка международные стандарты, которые поддерживают инновации и предлагают решения глобальных проблем. Эти стандарты содержат спецификации мирового уровня для продуктов, услуг и систем, обеспечивающие качество, безопасность и эффективность.
ИСО и ОПМ
[ редактировать ]В июне 2008 года Ричард Мартин обратился к Дову Дори после его презентации на Международном симпозиуме INCOSE в Утрехте, Нидерланды, чтобы узнать о возможности создания международного стандарта для OPM. [15] Мартин, организатор ISO TC184/SC5/WG1 по архитектуре и моделированию совместимости систем автоматизации, в течение некоторого времени искал методологии, предлагающие нечто большее, чем просто статическую информацию и моделирование процессов. [ нужна ссылка ] Он предоставил Дори простой пример для моделирования, который мог продемонстрировать как возможности моделирования OPM, так и возможности его динамического моделирования. [ нужна ссылка ]
В мае 2010 года Дори представил краткий обзор OPM и своей демонстрационной модели на пленарном заседании Технического комитета 184/Подкомитета 5 ISO (TC184/SC5), который затем принял резолюцию о создании исследовательской группы OPM с целью изучения потенциал OPM для улучшения стандартов, созданных SC5. [16]
Исследовательская группа OPM начала свою работу в октябре 2010 года и опубликовала промежуточный отчет для пленарного заседания SC5 2011 года. [15] Отчет включал несколько вариантов использования OPM для моделирования существующих стандартов SC5 и привел к первоначальной мотивации к стандартизации OPM, поскольку стандарты ISO, основанные на тексте, склонны к несогласованности и неполноте информации. Этот недостаток можно было бы значительно уменьшить, если бы стандарты были основаны на моделях, а не на тексте, и OPM предлагал для этой цели полезную базовую парадигму моделирования.
Окончательный отчет исследовательской группы OPM и проект метамодели для авторского документа на основе моделей стандартов были представлены на пленарном заседании SC5 2012 года. [17] По мере развития исследовательской группы OPM стало очевидно, что OPM также может служить прочной и всеобъемлющей основой для системного проектирования на основе моделей (MBSE), а также для моделирования как природных, так и искусственных систем. [ нужна ссылка ]
Документ ISO 19450
[ редактировать ]Участники TC184/SC5/WG1 получили первый проект OPM PAS в сентябре 2011 года с 16 страницами, 2 приложениями и библиографией общим объемом 25 страниц. [ нужна ссылка ] Большая часть контента просто идентифицирует заголовки подпунктов и графические изображения-держатели пробелов. [ нужна ссылка ] К пленарному заседанию SC5 2012 года проект PAS включал 10 полных статей, описывающих функции OPM, и 6 приложений общим объемом 86 страниц. [ нужна ссылка ] Одним из приложений была спецификация EBNF (расширенная форма Бэкуса-Наура, используемая для формального определения контекстно-свободных языков, позволяющая анализировать языки программирования) для OPL, а также еще одна подробная грамматика графа OPD. Чтобы облегчить проверку спецификации EBNF, Дэвид Шортер написал сценарий для оценки согласованности и полноты набора операторов EBNF. [ нужна ссылка ] Дальнейшие усилия по добавлению содержательных примеров и заполнению всех определенных разделов привели к тому, что к моменту пленарного заседания SC5 2013 года проект составил 138 страниц. [ нужна ссылка ] Впоследствии рабочий проект был зарегистрирован в Секретариате ПК5 как проект комитета для первоначального распространения среди членов ПК5. [ нужна ссылка ]
Поскольку в резолюции SC5, призывающей к спецификации OPM, указывалось, что документ должен быть зарегистрирован как общедоступная спецификация (PAS), у него будет только одна возможность голосования по принятию. В апреле 2014 года предложение по новому рабочему вопросу и пересмотренный проект комитета по стандарту ISO/PAS 19450 были переданы на рассмотрение SC5. [ нужна ссылка ] К настоящему времени проект Комитета состоял из 98 страниц плюс вступительная часть, четыре приложения и 30 библиографических ссылок, всего 183 страницы. [ нужна ссылка ] В марте 2015 года ISO зарегистрировала результаты голосования по ISO/PAS 19450: 8 утвердили, 1 утвердили с комментариями и 1 воздержался. [ нужна ссылка ]
ISO/PAS 19450 был официально опубликован ISO 15 декабря 2015 года объемом 162 страницы, что стало кульминацией шестилетних усилий по предоставлению сообществу стандартизации формальной спецификации нового подхода к моделированию, который объединяет графические и текстовые представления в единая парадигма, подходящая для автоматического моделирования поведения модели.
OPM против SysML и UML
[ редактировать ]- OPM против SysML
SysML определяется как расширение унифицированного языка моделирования (UML) с использованием механизма профилей UML . [11]
- OPM против UML
Различия между OPM и UML хорошо заметны на этапах анализа и проектирования. Хотя UML является мультимоделью, OPM поддерживает единую объединяющую модель структуры и поведения. Основные различия проистекают из структурно-ориентированного подхода UML, в котором поведение распределяется по тринадцати типам диаграмм, и этот факт неизбежно вызывает проблему множественности моделей. [18] Во-первых, использование подхода OPM позволяет просмотреть на главной диаграмме (ГД) основной процесс, объекты и связи между ними. [3] [ нужна страница ] Кроме того, несложно понять, в чем состоит основное преимущество системы (представлено на СД). В OPM также легче понять три основных аспекта системы: поведение, структуру и функциональность (в отличие от UML, который описывает эти аспекты с помощью различных типов диаграмм). [3] [ нужна страница ] Моделирование развертывания базы данных способствует пониманию системы и всех деталей, которые хранятся в системе. Кроме того, увеличение масштаба позволяет упростить модель. OPM требует обширных знаний о систематических процессах, например о том, как система сохраняет путь и принимает решения.
Создание представлений SysML из модели OPM
[ редактировать ]Хотя оба языка преследуют одну и ту же цель — предоставить средства для системного проектирования общего назначения, эти языки используют разные подходы к реализации этой цели. SysML — это профиль UML (унифицированного языка моделирования).
Преобразование OPM в SysML осуществляется по принципу «один ко многим» в том смысле, что один элемент OPM (объект или ссылка) обычно преобразуется в несколько элементов SysML, принадлежащих разным типам диаграмм SysML. Например, процесс OPM, который определяется как сущность, которая преобразует (генерирует, потребляет или изменяет состояние) объекта, может быть сопоставлен с любым подмножеством следующих сущностей SysML:
- Вариант использования (на диаграмме вариантов использования )
- Действие (в диаграмме деятельности )
- Триггер перехода состояний (на диаграмме конечного автомата).
Поскольку OPM и SysML — это два разных и по-разному спроектированных языка, не все конструкции на одном языке имеют эквивалентные конструкции на другом языке.
- Первый тип диаграммы в UML, который может быть создан на основе диаграммы OPM, — это диаграмма вариантов использования, предназначенная для моделирования использования системы. Основными элементами, составляющими диаграмму вариантов использования, являются действующие лица и варианты использования (сущности), а также отношения (ссылки) между ними. Таким образом, создание диаграммы вариантов использования из OPM основано на объектах окружающей среды (действующих лицах) и связанных с ними процессах (прецедентах использования). На рисунке 1 показан пример создания диаграммы вариантов использования SD0. На рисунке показаны корневая диаграмма OPM (а), соответствующий текст OPL (б) и созданная диаграмма вариантов использования (в). На рисунке 2 показан уровень OPD SD1 из той же модели OPM (а) и сгенерированная диаграмма вариантов использования (б).
- Второй тип диаграмм — это диаграмма определения блоков (BDD), которая определяет функции блоков (например, свойства и операции) и отношения между блоками, такие как ассоциации и обобщения. Создание BDD основано на системных объектах модели OPM и их отношениях — в основном структурных отношениях с другими элементами модели.
- Третий тип диаграмм — это диаграммы деятельности, которые предназначены для описания потока. Ключевые компоненты, включенные в диаграмму деятельности, — это действия и элементы потока маршрутизации. В нашем контексте отдельная диаграмма действий может быть создана для каждого процесса OPM, содержащего дочерние подпроцессы, т. е. процесса, масштаб которого увеличен в модели OPM. Существует два типа пользовательских параметров, которые можно указать в диалоговом окне настроек. Первый касается выбора процессов OPM: один из вариантов — явно указать необходимые процессы OPM, выбрав их из списка. Альтернативный вариант, который используется по умолчанию, — начать с корневого OPD (SD) и спуститься по иерархии. Здесь мы достигаем второго параметра (независимого от первого), который представляет собой необходимое количество уровней OPD (k) для спуска по иерархии. Чтобы дать пользователю контроль над уровнем абстракции, диаграммы генерируются до k уровней вниз по иерархии. Каждый уровень приведет к созданию дополнительной диаграммы действий, которая является дочерней деятельностью (поддиаграммой), содержащейся во включающей активности более высокого уровня. По умолчанию для этой опции установлено значение «все уровни вниз» (т. е. «k = ∞»). [19]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б с д и «ISO/PAS 19450:2015 – Системы автоматизации и интеграция. Объектно-процессная методология» . iso.org . Декабрь 2015 года . Проверено 3 мая 2017 г.
- ^ Jump up to: а б Дори, Дов (1995). «Объектно-процессный анализ: поддержание баланса между структурой системы и поведением». Журнал логики и вычислений . 5 (2): 227–249. дои : 10.1093/logcom/5.2.227 .
- ^ Jump up to: а б с д и Дори, Дов (2002). Объектно-процессная методология: парадигма целостных систем . Берлин, Гейдельберг, Нью-Йорк: Springer-Verlag . дои : 10.1007/978-3-642-56209-9 . ISBN 978-3540654711 . S2CID 13600128 .
- ^ Jump up to: а б с д и ж г час я дж Дори, Дов (2016). Модельно-ориентированное системное проектирование с использованием OPM и SysML . Нью-Йорк: Springer-Verlag . дои : 10.1007/978-1-4939-3295-5 . ISBN 9781493932955 . OCLC 959032986 . S2CID 32425215 .
- ^ Jump up to: а б с «Лаборатория моделирования корпоративных систем » Установка OPCAT» . technion.ac.il . Проверено 3 мая 2017 г.
- ^ Буч, Г. «Время прекращения огня в войне методов». Журнал объектно-ориентированного программирования , июль/август 1993 г.
- ^ Перельман, Валерия; Сомех, Юдит; Дори, Дов (2011). Структура проверки модели с применением к молекулярной биологии . ТМС-Девс '11. Международное общество компьютерного моделирования. стр. 140–145.
- ^ Фишер, Амит; Нолан, Майк; Фриденталь, Сэнфорд; Леффлер, Майкл; Сэмпсон, Марк; Баджадж, Манас; ВанЗандт, Лонни; Хови, Криста; Палмер, Джон; Харт, Лаура (2014). «3.1.1 Управление жизненным циклом модели для MBSE». Международный симпозиум INCOSE . 24 : 207–229. дои : 10.1002/j.2334-5837.2014.tb03145.x . S2CID 106677531 .
- ^ См. также: Эрре, Генрих; Хеллер, Барбара; Бурек, Патрик; Хендорф, Роберт; Лебе, Фрэнк; Михалек, Ханнес (июль 2006 г.). «Общая формальная онтология (GFO): фундаментальная онтология, интегрирующая объекты и процессы: часть I: основные принципы» (PDF) . Отчет Онто-Мед . 8 :3.
Текущие языки, используемые для концептуального моделирования, такие как унифицированный язык моделирования (UML), моделирование сущностей-связей в области баз данных или методология объектно-процесса, могут быть проверены в соответствии с их онтологическими обязательствами.
- ^ Дори, Дов; Линчевски, Чен; Поместье, Раанан (2010). «OPCAT - программная среда для концептуального моделирования сложных систем на основе объектно-процессной методологии». Учеб. 1-я Международная конференция по моделированию и управлению технологическими процессами . Кембриджский университет, Кембридж, Великобритания, Хейсиг П., Кларксон Дж. и Вайна С. (ред.): 147–151.
- ^ Jump up to: а б Grobshtein, Yariv; Перельман, Валерия; Safra, Eliyahu; Дори, Дов (2007). Systems Modeling Languages: OPM Versus SysML . Хайфа, Israel: IEEE. pp. 102-109. ISBN 978-1-4244-0770-5 . Архивировано из оригинала 18 февраля 2020 года . Проверено 15 ноября 2018 г.
- ^ См. также: «Жизненный цикл мРНК» (PDF) . technion.ac.il . Проверено 3 мая 2017 г.
- ^ Лаборатория моделирования корпоративных систем. "Облако" .
- ^ Дори, Дов; Джбара, Ахмад; Леви, Натали; Венгрович, Нива. «Методология объектно-процесса, OPM ISO 19450 – OPCloud и эволюция инструментов моделирования OPM» . Проект Перформанс Интернэшнл . Проверено 18 ноября 2018 г.
- ^ Jump up to: а б Блехман, Алекс; Дори, Дов; Мартин, Ричард. «Разработка стандартов на основе моделей» (PDF) . Проверено 18 ноября 2018 г.
- ^ Дори, Дов; Хоуз, Дэвид; Блехман, Алекс; Мартин, Ричард. «OPM как основа для корпоративных стандартов на основе моделей, отчет рабочей группы OPM ISO TC184/SC5 на пленарном заседании ISO TC184/SC5, Токио, 26, 2010 г.» (PDF) . Проверено 18 ноября 2018 г.
- ^ ПК 5 ПЛЕНАРНОЕ ЗАСЕДАНИЕ. «Отчет о заседании» (PDF) . Проверено 18 ноября 2018 г.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ) - ^ Пелег, М.; Дори, Д. (2000). «Проблема множественности модели: экспериментирование с методами спецификации в реальном времени». Транзакции IEEE по разработке программного обеспечения . 26 (8): 742–759. CiteSeerX 10.1.1.321.5507 . дои : 10.1109/32.879812 .
- ^ Гробштейн, Ярив; Дори, Дов (2009). Создание представлений SysML на основе модели OPM . Хайфа, Израиль: IEEE. стр. 36–44. дои : 10.1109/MBSE.2009.5031718 . ISBN 978-1-4244-2967-7 . S2CID 6195904 .
Внешние ссылки
[ редактировать ]- Объектно-процессная методология и ее применение в визуальной семантической сети , презентация Дова Дори, 2003 г.
- Некоторые особенности технического языка навья-ньяя
- Формализация мыслительного процесса концептуального моделирования в интересах инженеров и ученых. , презентация Дов Дори, 2015.
- Формализация мыслительного процесса концептуального моделирования в интересах инженеров и ученых
- Патент США US7099809B2 на преобразование OPD в текстовые форматы и обратно.