В диаграммах последовательности UML у вас есть объединенный тип фрагмента Alt для ветвления на основе разных значений параметров. Но предположим, что в середине вашей последовательности вы ожидаете одного из двух разных сообщений от двух разных внешних участников, и вы будете разворачивать код в зависимости от того, какой из них прибывает, что было бы лучшим способом его моделировать? И чтобы сделать вопрос немного более сложным, давайте предположим, что ни одно сообщение не приходит (вызывая таймаут).В диаграммах последовательности UML можно моделировать дополнительные внешние входы
Без лучшего решения я бы разделил диаграмму последовательности на несколько диаграмм последовательностей, каждая из которых начиналась с одного из двух возможных сообщений. Или, возможно, просто перейдите на государственные машины. Но разве это не слишком запутанный способ, который позволил бы мне показать эти разные случаи в одной диаграмме последовательности?
Посмотрите здесь, для аналогичного вопроса: http://programmers.stackexchange.com/questions/153560/how-to-visualize-timer-functionality-in-sequence-diagram – Catweazle