КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
СоединенияЗавершение одного действия может инициировать начало выполнения сразу нескольких других действий или, наоборот, определенное действие может требовать завершения нескольких других действий до начала своего выполнения. Соединения разбивают или соединяют внутренние потоки и используются для описания ветвления процесса: . разворачивающие соединения используются для разбиения потока. Завершение одного действия вызывает начало выполнения нескольких других; • сворачивающие соединения объединяют потоки. Завершение одного или нескольких действий вызывает начало выполнения другого действия. В табл. 2.2 объединены три типа соединений. Таблица 2.2 Примеры разворачивающих и сворачивающих соединений Рис. 2.10. Два вида соединений
И-соединения. Соединения этого типа инициируют выполнение конечных действии. Все действия, присоединенные к сворачивающему «и»-соединению, должны завершиться, прежде чем начнется выполнение следующего действия. На рис. 2.11 после обнаружения пожара инициируются включение пожарной сигнализации, вызов пожарной охраны, и начинается тушение пожара. Запись в журнал производится только тогда, когда все три перечисленных действия завершены. Соединение «эксклюзивное "или "». Вне зависимости от количества действий, связанных со сворачивающим или разворачивающим соединением «эксклюзивное «или», инициировано будет только одно из них, и поэтому только оно будет завершено перед тем, как любое действие, следующее за сворачивающим соединением «эксклюзивное «или», сможет начаться. Если правила активации соединения известны, они обязательно должны быть документированы либо в его описании, либо пометкой стрелок, исходящих из разворачивающего соединения, как показано на рис. 2.12. На рис. 2.12 соединение «эксклюзивное «или» используется для отображения того факта, что студент не может одновременно быть направлен на лекции по двум разным курсам. Соединение «или» предназначено для описания ситуаций, которые не могут быть описаны двумя предыдущими типами соединений. Аналогично связи нечеткого отношения соединение «или» в основном определяется и описывается непосредственно системным аналитиком. На рис. 2.13 соединение J2 может активизировать проверку данных чека и/или проверку суммы наличных. Проверка чека инициируется, если покупатель желает расплатиться чеком, проверка суммы наличных — при оплате наличными. И то, и другое действие инициируются при частичной оплате как чеком, так и наличными.
Синхронные и асинхронные соединения. В рассмотренных примерах связей «и» и «или» мы не затрагивали отношения между началом и окончанием действий, инициируемых разворачивающими соединениями. Все действия в этих примерах выполнялись асинхронно, т.е. они не инициируются одновременно. Однако есть случаи, когда время начала или окончания параллельно выполняемых действий должно Бить одинаковым, т.е. действия должны выполняться синхронно. Для моделирования такого поведения системы используются различные виды синхронных соединений (табл. 2.3). Синхронное соединение обозначается двумя вертикальными линиями внутри прямоугольника.
Во многих спортивных состязаниях выстрел стартового пистолета, запуск секундомера и начало состязания должны произойти одновременно. В противном случае состязание будет нечестным. На рис. 2.14 представлена модель этого примера, построенная с Рис. 2.14. Синхронное соединение Заметим, что синхронное разворачивающее соединение не обязательно должно иметь парное себе сворачивающее соединение. Действительно, начинающиеся одновременно действия вовсе не должны оканчиваться одновременно, как это видно из примера с состязания ми. Также возможны ситуации синхронного окончания асинхронно начавшихся действий.
|