Общий раздел > Теория моделирования и нотации
UML. Имя Activity
Resen70:
Добрый день!
Делаю простую диаграмму Activity Diagram с помощью PowerDesigner.
Диаграмма описывает алгоритм некоторой процедуры, обрабатывающей текущую строку таблицы.
На этой диаграмме несколько объектов Activity по сути являются вызовом одной и той же подпрограммы, выполняют одни и те же действия, но в разных местах алгоритма.
Естественно, для этих объектов Activity я в имени указываю одно и то же имя вызываемой подпрограммы.
Однако, PowerDesigner не дает этого сделать и выдает ошибку о том, что имя не уникально.
Объясните, пожалуйста, в соответствии с требованиями стандарта UML разве имена всех объектов должны быть уникальными?
Какой в этом смысл?
А если имя уникальное, то как на диаграмме отобразить тот факт, что несколько объектов Activity вызывают одну и ту же подпрограмму?
[прилетело НЛО и...]:
Activity -- это вызываемая процедура. Она одна.
Шагами алгоритма являются вызовы этой процедуры. Это узлы действия -- Action node. Тип этих узлов Call Behaviour Action. Вызываемое поведение -- Activity -- указывается как параметр узла (не как его имя).
Resen70:
Здравствуйте!
Недавно делал диаграмму в Enterprise Architect.
И оказалось, что EA свободно дает создавать несколько Activity с одинаковыми именами!
Что это значит? Что EA нарушает стандарт?
Или то, что Activity в EA имеют другой смысл?
[прилетело НЛО и...]:
Стандарт языка не запрещает одноимённые деятельности.
EA не может строить догадки о том, что Вы моделируете.
PD аллертит из-за нарушения встроенных в него правил.
По [моей] идее, очень мало поводов рисовать именно деятельность на диаграмме деятельности. В описанном Вами случае на диаграмме деятельность одна и она выполняет роль рамки всей диаграммы. Это описываемая процедура.
Вызываемая подпрограмма как деятельность на диаграмме не присутствует. Присутствуют её вызовы -- узлы действия, Action Node.
Написанное выше не является требованием стандарта. Это что-то вроде перевода написанного Вами в термины UML.
Galogen:
--- Цитата: Resen70 от 09 Июля 2023, 10:53:22 ---Добрый день!
Делаю простую диаграмму Activity Diagram с помощью PowerDesigner.
Диаграмма описывает алгоритм некоторой процедуры, обрабатывающей текущую строку таблицы.
На этой диаграмме несколько объектов Activity по сути являются вызовом одной и той же подпрограммы, выполняют одни и те же действия, но в разных местах алгоритма.
Естественно, для этих объектов Activity я в имени указываю одно и то же имя вызываемой подпрограммы.
Однако, PowerDesigner не дает этого сделать и выдает ошибку о том, что имя не уникально.
Объясните, пожалуйста, в соответствии с требованиями стандарта UML разве имена всех объектов должны быть уникальными?
Какой в этом смысл?
А если имя уникальное, то как на диаграмме отобразить тот факт, что несколько объектов Activity вызывают одну и ту же подпрограмму?
--- Конец цитаты ---
На самом деле процедура в программе определена одна, а вот вызовов конечно может быть много.
Навигация
Перейти к полной версии