<На страницу назад | На страницу вперед>
3.2.2 Связи
Связи - это перемычки, соединяющие блоки UOB для формирования представлений
динамических процессов. В основном, связи используются для обозначения значимых
отношений между UOB. Связи направляют внимание на важные отношения между UOB
в определенном процессе. Примеры типов отношений, которые можно выделить посредством
связей IDEF3: временные, логические, причинно-следственные, естественные и условные.
Однако, в большинстве случаев для пользователей наибольший интерес представляет
указание простого временного предшествования. Поэтому для выражения этого отношения
существует специальный класс связей. Документ на детальное описание связей
предшествования (precedence link elaboration document) позволяет пользователям
производить сбор дополнительных деталей относительно конкретной связи предшествования.
Линии связи могут начинаться или заканчиваться в любой точке блока UOB или символа
перехода. В схематиках процессов IDEF3 используется два основных типа связей:
связи предшествования (precedence link) и пунктирные связи (dashed
link). Символы, используемые для представления каждого типа, показаны на рис.
3-2.
Рис. 3-2
Типы связей IDEF3
Связи простого предшествования
Связи предшествования выражают отношения временного предшествования между
экземплярами одной UOB и экземплярами другой UOB. Эти связи используются в наибольшей
степени; для обозначения этих связей используется стрелка в виде сплошной линии,
к которой может быть прикреплен дополнительный маркер, как показано на рис.
3-2. Связи предшествования соединяют блоки UOB, как показано на рис. 3-3, при
использовании связи простого предшествования.
Рис. 3-3
Основной синтаксис связей предшествования
Блок 1 (метка "А") на "заднем" конце связи называется источником (source) связи, а блок 2 (метка "В") на "переднем" конце связи называется адресатом (destination). Если этот пример рассматривать как схематику IDEF3, то блок 1 называется (непосредственным) предшественником (predecessor) блока 2 в данной схематике, а блок 2 называется (непосредственным) наследником (successor) блока 1.
Значение этой схематики, как и любой схематики IDF3 вообще, можно понять в терминах возможных активаций схематики. Активация схематики - это совокупность экземпляров некоторых или всех UOD в процессе, представляемом схематикой, временные и логические свойства которой удовлетворяют специфицированным в схематике условиям. Как правило, существует множество различных видов активаций для данной схематики. Для примера можно привести один возможный вид активации для простой двухблочной схематики, подобной схематике, представленной на рис. 3-3: за одним экземпляром a единицы поведения (UOB) A следует экземпляр b единицы поведения (UOB) B. Точнее говоря, любая пара экземпляров a и b единиц поведения (UOB) A и B, соответственно, когда b не начнется до тех пор, пока не будет завершен a, представляет правомерную активацию рис. 3-3.
Графики активации
Графики активации используются для представления активаций. Экземпляры UOB в
активации должны входить в рамках одного конечного интервала времени, который
начинается в момент начала первого экземпляра активации и заканчивается в момент
окончания последнего экземпляра. Для определения факта, является ли данный набор
экземпляров UOB активацией данного описания, полезно построить график общей
комбинации их вхождения в течение такого интервала времени. В целях разработки
описания для получения общей комбинации часто бывает полезно построить график
комбинации активаций для определенной совокупности наблюдений в течение данного
интервала времени. Для построения такого графика используется список имен UOB
по вертикали; строится график экземпляров каждой UOB в соответствии с временем
вхождения и длительностью каждого экземпляра. Например, на рис. 3-4 представлен
график активации для показанной на рис. 3-3 схематики, где линия справа от каждого
имени UOB представляет интервал времени, в течение которого присутствует экземпляр
данной UOB. Отсутствие горизонтального наложения в проекциях двух линий означает,
что данный экземпляр B не начнется до тех пор, пока не закончится экземпляр
A, в соответствии с требованиями схематики рис. 3-3. Следовательно, этот график
действительно представляет активацию рис. 3-3
Рис. 3-4
График активации для рис. 3-3
Ограниченные связи предшествования
На рис. 3-3, на котором представлена связь простого предшествования, не показано,
возможно ли вхождение экземпляров любой UOB в описываемой системе без соответствующего
экземпляра другой UOB. В любом случае из рис. 3-3 видно, что возможно вхождение
экземпляра A без экземпляра B или возможно вхождение экземпляра B до экземпляра
A. Таким образом, семантику связи простого предшествования можно считать допустимой.
Ограниченные связи предшествования к тому же добавляют ограничения в семантику
активации простого предшествования. Первая ограниченная связь предшествования
показывает, что за любым экземпляром UOB источника должен следовать экземпляр
UOB адресата. Именно это подразумевает "направленность" связи; это
ограничение действует только "слева направо". Так, например, как и
в случае простого предшествования, активация схематики на рис. 3-5a включает
экземпляр "Подписать табельный лист" (Sign timesheet), после
которого следует экземпляр "Получить утверждение табельного листа"
(Obtain timesheet approval). Однако, ограниченная связь в схематике также выражает,
что за любым экземпляром "Подписать табельный лист" должен
следовать экземпляр "Получить утверждение табельного листа".
Отсутствие такого экземпляра означает противоречие (inconsistency) описываемой
системе. Следовательно, такой набор событий не может быть классифицирован как
активация описания IDEF3.
Рис. 3-5a
Пример схематики, включающей ограниченную связь предшествования
При данной направленности связи на рис. 3-5a только экземпляры "Получить утверждение табельного листа" не запрещаются условиями рис. 3-5a; такие случаи могут иметь место, например, тогда, если служащий увольняется до сдачи табельных листов за данный период начисления заработной платы (в этом случае утвержденный впоследствии табельный лист никогда не будет подписан).
Две оставшиеся ограниченные связи предшествования показаны на рис. 3-5b. Эти связи указывают подобные ограничения, идущие в противоположном направлении и в обоих направлениях, соответственно. Иначе говоря, верхняя схематика показывает (снова в дополнение к семантике активации простого предшествования), что экземпляру B должен предшествовать экземпляр A; нижняя схематика показывает, что за любым экземпляром A должен следовать экземпляр B и что экземпляру B должен предшествовать экземпляр A. Эти ограничения добавляют нормативный компонент в описание системы, т.е. компонент, выражающий не только то, как система ведет себя по наблюдениям, но и то, как ей следует себя вести. Следовательно, ограниченные связи особенно полезны в тех случаях, когда IDEF3 используется не просто для регистрации убеждений и наблюдений за поведением системы, но и для моделирования системы.
Рис. 3-5b
Дополнительные примеры ограниченных связей предшествования
Ясно, что этими тремя связями не исчерпываются возможные ограничения, которые могут действовать между UOB. Например, можно добавить семантику простого предшествования рис. 3-3, в соответствии с которой между окончанием одного экземпляра A в любой активации и началом последующего экземпляра B может пройти не более пяти минут. Последняя ограниченная связь предшествования показывает наличие общих ограничений этого типа. Поэтому такая связь называется общей ограниченной связью предшествования (рис. 3-6). Поскольку характер этих ограничений может варьироваться, они должны быть зарегистрированы в явной форме в документе на детальное описание связей предшествования. (См. приведенный ниже раздел "Документ на детальное описание связей предшествования").
Рис. 3-6
Общая ограниченная связь предшествования
Пунктирные связи
Пунктирные связи не имеют предопределенной семантики. Поэтому они часто
называются определяемыми пользователем связями или реляционными связями. Этот
тип связи определяет существование (возможно, ограничивающего) отношения между
двумя UOB. Например, реляционная связь, показанная на рис. 3-7, может указывать
ограничение между "Подписать табельный лист" и "Получить
утверждение табельного листа", в соответствии с которым никто не может
утвердить свой собственный табельный лист. Точный характер отношения, обозначенного
реляционной связью, специфицируется в документе "Детальное описание реляционных
связей".
Рис. 3-7
Пример реляционной связи
Номера связей
Все связи имеют номер детального описания и уникальный номер. Перед номерами
связей предшествования ставятся буквы PL (Precedence Link - связь предшествования).
Перед реляционными связями ставятся буквы DL (Dashed Link - пунктирная
связь). Например, связи предшествования могут иметь номера PL1, PL2 и т.д. Уникальность
номеров связей обеспечивается использованием процедуры, подобной схеме нумерации
UOB. Это значит, что номера связей задаются последовательно из пула, выделенного
автору. Отображение номеров связей в схематиках процессов не обязательно.
Семантика активаций для схематик процессов без ветвления
Прежде чем вводить переходы (которые обеспечивают для IDEF3 возможность описания
структуры процессов с ветвлением), следует обобщить семантику для различных
типов связей для более крупных схематик без ветвления. Рассмотрим простую схематику,
приведенную на рис. 3-8, описывающую процесс проведения собрания для обсуждения
отчетов комиссий.
Рис. 3-8
Схематика IDEF3 без ветвления
Как и при рассмотрении любой схематики IDEF3, основную семантику данной схематики следует понимать в терминах комбинации возможных активаций, которые она описывает. Иначе говоря, эта схематика точно специфицирует то, что считается собранием в данном контексте. Как и в простом случае с двумя блоками, как правило, активация имеет следующую комбинацию. После экземпляра "Призвать собрание к порядку" следует экземпляр "Обсудить отчеты комиссий", после которых, в свою очередь, следуют экземпляры "Закрыть собрание" и "Распространить протокол", где каждый экземпляр в данной последовательности начинается не раньше, чем закончится его предшественник. Как и для всех схематик без ветвления (и для всех схематик без дизъюнктивного ветвления), типичную комбинаицю активации для рис. 3-8 можно представить графиком активации, приведенным на рис. 3-9.
Рис. 3-9
График активации для рис. 3-8
Ограниченные связи предшествования указывают дальнейшие ограничения для данного процесса: отчеты комиссий не должны обсуждаться до тех пор, пока собрание не будет призвано к порядку; протокол должен быть распространен после собрания. Отсутствие какого-либо ограничения между второй и третьей UOB, например, допускает возможность окончания собрания до завершения UOB "Обсудить отчеты комиссий". В этом случае сокращенное собрание будет активацией описываемого процесса; при этом не нарушаются никакие ограничения и, следовательно, нет противоречия описанию. Ограничения, определяемые ограниченными связями, следует понимать как ограничения, не зависящие от какой-либо активации. Так что даже если собрание было закрыто без завершения UOB "Обсудить отчеты комиссий", ограничение между двумя последними UOB требует распространения протокола после закрытия сокращенного собрания.