Моделирования uml
H Illness go(Illness) goBack() H*
Download 1.84 Mb. Pdf ko'rish
|
ivanov novikov unificirovannii jazik modelirovanija uml 2011
- Bu sahifa navigatsiya:
- 4.5.3. Развилки и слияния
- Развилки и слияния — это средства визуализации составных переходов
H
Illness go(Illness) goBack() H* Applicant hire() move() Unemployed hire() fire() 4 1 2 3 5 6 Рис. 4.48. Составные переходы Поведение машин состояний в параллельных областях составного состояния Employed на диаграммах рис. 4.47 и рис. 4.48 независимо — каждая из групп параллельных состояний "живет своей жизнью". 224 4.5.3. Развилки и слияния В этом параграфе рассматриваются средства описания параллельности, применяемые на диаграммах деятельности. Диаграмма деятельности похожа на привычную блок-схему, но допускает использование различных дополнительных обозначений. Это правило распространяется, прежде всего, на моделирование параллелизма: основные средства моделирования параллельного поведения на диаграммах деятельности имеют много общего с рассмотренными в предыдущем параграфе, плюс некоторые дополнительные особенности. Основными средствами являются уже рассмотренные развилки и слияния, а дополнительным — обусловленный поток управления. Рассмотрим их все по порядку. Развилки и слияния — это средства визуализации составных переходов. Диаграмму деятельности можно трактовать как диаграмму состояний, в которой используются (в основном) переходы по завершении. Что же такое составной переход по завершении? В сущности, это очень простая и естественная конструкция, может быть даже более естественная, чем общий случай составного перехода. Составной переход по завершении на диаграмме деятельности имеет следующие особенности. Во-первых, никто не использует данный термин: все применяют названия частных случаев нотации: развилка, слияние, линейка синхронизации. Все эти случаи являются составными переходами по завершении. Во-вторых, семантика данных конструкций определяется в UML 1 в терминах потоков управления. В общем случае имеется линейка синхронизации, которой инцидентны входящие (один или более) и исходящие (один или более) сегменты переходов. Семантика состоит в следующем. Сначала все деятельности, инцидентные 225 входящим сегментам, должны завершиться. После этого параллельно запускаются все деятельности, инцидентные исходящим сегментам. В-третьих, семантика данных конструкций определяется в UML 2 альтернативным, но эквивалентным способом в терминах маркеров. Развилка создает столько копий пришедшего маркера (управления или данных), сколько имеется исходящих дуг и запускает созданные маркеры во все исходящие дуги. Слияние, напротив, дожидается получения маркеров по всем входящим дугам, после чего отправляется маркер по единственной исходящей дуге. Общий случай — линейка синхронизации (с несколькими входящими и Download 1.84 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling