Семантика возникновения выполнения в диаграммах последовательности - PullRequest
0 голосов
/ 27 ноября 2011

Я преподаю курс, использующий UML в качестве инструмента для моделирования систем.В курсе мы обучаем диаграммам последовательности, и во время подготовки курса я обнаружил, что нет четкого определения семантики «вхождения в исполнение».Например.Если объект сам вызывает "ожидание ввода", и этот вызов находится внутри события выполнения, может ли объект получать сообщения?Очевидно, я думаю, что да, потому что он ожидает сообщений.

Но это противоречит идее, что случаи выполнения означают, что объект в данный момент "занят" или "активен".

Любая помощь / идеи?Мое заключение состояло в том, чтобы оставить предмет и сказать студентам игнорировать случаи казни.Есть идеи получше?

1 Ответ

2 голосов
/ 30 ноября 2011

В целом, обратите внимание, что у диаграмм последовательности нет точной семантики (и AFAIK они не включены в новую базовую семантику UML ), поэтому они более илименее "открытый для интерпретации", чтобы удовлетворить ваши конкретные потребности в эскизах.

В целом, что означает Диаграмма последовательности?Является ли это универсальной спецификацией («так будет всегда вести себя система», поэтому других допустимых вариантов поведения нет)?Или это экзистенциальная спецификация («это сценарий, который система должна поддерживать», следовательно, система, которая не является неправильной)?Или это просто описание («это может произойти»).Ответа нет, потому что у SD нет такой точной семантики.

(Конечно, некоторые формализации действительно существуют , но тогда это зависит от того, чему вы хотите научить.)

Поэтому я не думаю, что у этого квеста есть уникальный ответ:

"Если объект сам выполняет вызов" ждать ввода ", и этот вызов находится внутри события выполнения, можетобъект получает сообщения? "

Сказано:

Согласно этого урока , событие выполнения (EO) обозначает:

выполнение выполнения или активация фокуса контроля

Посмотрите также на следующую диаргаму о самообменах, где у вас есть вложенные случаи выполнения.

Более того, здесь просто сказано, что EO - это:

моментов времени, в которые действия или поведения начинаются или заканчиваются

Наконец, ссылки на EO выполнениеспецификации , которые представляют:

период ввремя жизни участника, когда он (а) выполняет единицу поведения или действия на линии жизни, (б) отправляет сигнал другому участнику или (в) ожидает ответного сообщения от другого участника.

Надеюсь, это поможет :) 1047 *

...