Схема последовательности UML: уничтожить объект с условием

У меня есть случай, когда приложение уничтожит объект при выполнении условия. Если объект не уничтожен, он будет использован в более поздней части последовательности. Мне было интересно, как смоделировать это на диаграмме последовательности.

Вот простая демонстрация, это действительная диаграмма последовательности?

введите описание изображения здесь


person J.Y    schedule 09.11.2016    source источник
comment
Хороший вопрос. Я бы использовал alt фрагмент с двумя разрушениями. Но инструмент, который я использую (EA), позволяет только одно уничтожение. Так что я бы вытащил уничтожение и поместил if not destroy в opt фрагмент, который в основном такой же.   -  person qwerty_so    schedule 09.11.2016


Ответы (1)


Вы не можете юридически смоделировать это в UML.

17.12.6 DestructionOccurrenceSpecification ... 17.12.6.4 Ограничения

no_occurrence_specifications_below

Никакие другие спецификации возникновения на данной линии жизни в InteractionOperand не могут появляться под спецификацией DestructionOccurrenceSpecification.

По сути, это означает, что разрушение может произойти только один раз. Однако вы можете смоделировать это так:

введите здесь описание изображения

person qwerty_so    schedule 09.11.2016