Открытая коллекция знаний

OpenU.Ru

Справочник UML. Объектно-ориентированное проектирование.



iteration expression (выражение, описывающее итерации)

Выражение, с помощью которого описывают множество вариантов итераций. Каждый вариант описывает выполнение действия в итерации. Он может включать в себя установку значений переменных итерации. Выполнение действия происходит для каждого варианта итерации всего один раз.
См. message.

Семантика

Выражение, описывающее итерацию, представляет собой обусловленное итеративное выполнение. В зависимости от условий оно является выполнением нуля и более сообщений. Существуют следующие альтернативы:
* [итерационное выражение] Итерация
[условное выражение] Разветвление
Итерация представляет собой последовательность сообщений. Переменная итерации и проверка се значения изображаются с помощью строки итерационное выражение, однако, она необязательна. В случае ее отсутствия условия итерации останутся неопределенными. Итерационное выражение предназначено для реализации в псевдокоде или языке программирования, формат которого язык UML не определяет. Например, это может быть
*[i := 1..n]
Условие представляет собой сообщение, выполнение которого возможно при истинности выражения условное выражение. Условное выражение предназначено для реализации в псевдокоде или языке программирования, формат которого UML не определяет. Например, это может быть
[х > у]
Обратите внимание, что разветвление изображается точно так же, как и итерация без звездочки. Иначе говоря, его можно считать итерацией, которая происходит всего один раз.
Нотация итерации предполагает, что сообщения в итерации будут, а выполняться одно за другим. Однако они могут выполняться и параллельно. В таком случае в нотации будут присутствовать звездочка и две вертикальные линии, изображающие параллелизм (*| | ) . Например:
*[ i :=1..n ] | | q [ i ] . calculateScore ( )
Обратите также внимание, что во вложенной структуре выражение итерации не повторяется на вложенных уровнях. Каждый уровень структуры определяет в своем контексте собственную итерацию.

Алфавитный указатель