Стрелки на диаграммах декомпозиции
Несвязанные граничные стрелки (unconnectedborderarrow).При декомпозиции работы входящие в нее и исходящие из нее стрелки (кроме стрелки вызова) автоматически появляются на диаграмме декомпозиции (миграция стрелок), но при этом не касаются работ. Такие стрелки называются несвязанными и воспринимаются в BPwinкак синтаксическая ошибка.
На рис. 2.3 приведена диаграмма декомпозиции с несвязанными стрелками, генерирующийся BPwinпри декомпозиции работы "Изготовление изделия".
Для связывания стрелок входа, управления или механизма необходимо перейти в режим редактирования стрелок, щелкнуть по наконечнику стрелки и щелкнуть по соответствующему сегменту работы. Для связывания стрелки выхода необходимо перейти в режим редактирования стрелок, щелкнуть по сегменту выхода работы и затем по стрелке.
Внутренние стрелки. Для связи работ между собой используются внутренние стрелки, т.е. стрелки, которые не касаются границы диаграммы, начинаются у одной и кончаются у другой работы.
Для рисования внутренней стрелки необходимо в режиме рисования стрелок щелкнуть по сегменту (например, выхода) одной работы и затем по сегменту (например, входа) другой.
В IDEF0 различают пять типов связей работ.
Связь по входу (output-input),когда стрелка выхода вышестоящей работы (далее - просто выход) направляется на вход нижестоящей (например, на рис. 2.7 стрелка "Детали"связывает работы "Изготовление деталей" и "Сборка изделия").
Рис. 2.7. Связь по входу
Связь по управлению (output-control),когда выход вышестоящей работы направляется на управление нижестоящей. Связь по входу показывает доминирование вышестоящей работы. Данные или объекты выхода вышестоящей работы не меняются в нижестоящей. На рис. 2.8 стрелка «Чертеж»связывает работы «Создание чертежа детали»и «Изготовление детали», при этом чертеж не претерпевает изменений в процессе изготовления деталей.
Рис. 2.8. Связь по управлению
Обратная связь по входу (output-inputfeedback),когда выход нижестоящей работы направляется на вход вышестоящей. Такая связь, как правило, используется для описания циклов. На рис. 2.9 стрелка «Ошибка ввода» связывает работы «Проверка бизнес-правил» и «Ввод данных», при этом выявленные на этапе проверки правильности ввода ошибки в данных должны направляться на повторный ввод.
Рис. 2.9. Обратная связь по входу
Обратная связь по управлению (output-controlfeedback), когда выход нижестоящей работы направляется на управление вышестоящей (стрелка «Рекомендации»,рис. 2.10).
Рис. 2.10. Обратная связь по управлению
Обратная связь по управлению часто свидетельствует об эффективности бизнес-процесса. В случае, изображенном на рис. 2.9, качество изделия может быть повышено путем непосредственного регулирования процессами изготовления деталей и сборки изделия в зависимости от результата (выхода) работы «Контроль качества».
Связь выход-механизм (output-mechanism),когда выход одной работы направляется на механизм другой. Эта взаимосвязь используется реже остальных и показывает, что одна работа подготавливает ресурсы, необходимые для проведения другой работы (рис. 2.11).
Рис. 2.11. Связь выход-механизм
Явные стрелки. Явная стрелка имеет источником одну-единственную работу и назначением тоже одну-единственную работу.
Разветвляющиеся и сливающиеся стрелки. Одни и те же данные или объекты, порожденные одной работой, могут использоваться сразу в нескольких других работах. С другой стороны, стрелки, порожденные в разных работах, могут представлять собой одинаковые или однородные данные или объекты, которые в дальнейшем используются или перерабатываются в одном месте. Для моделирования таких ситуаций в IDEF0 используются разветвляющиеся и сливающиеся стрелки. Для разветвления стрелки нужно в режиме редактирования стрелки щелкнуть по фрагменту стрелки и по соответствующему сегменту работы. Для слияния двух стрелок выхода нужно в режиме редактирования стрелки сначала щелкнуть по сегменту выхода работы, а затем по соответствующему фрагменту стрелки.
Смысл разветвляющихся и сливающихся стрелок передается именованием каждой ветви стрелок. Существуют определенные правила именования таких стрелок. Рассмотрим их на примере разветвляющихся стрелок.
Если стрелка именована до разветвления, а после разветвления ни одна из ветвей не именована, то подразумевается, что каждая ветвь моделирует те же данные или объекты, что и ветвь до разветвления (рис. 2.12).
Если стрелка именована до разветвления, а после разветвления какая-либо из ветвей не именована, то подразумевается, что эти ветви соответствуют именованию. Если при этом какая-либо ветвь после разветвления осталась неименованной, то подразумевается, что она моделирует те же данные или объекты, что и ветвь до разветвления (рис. 2.13).
Рис. 2.12. Пример именования разветвляющейся стрелки
Рис. 2.13. Другой пример именования разветвляющейся стрелки
Недопустима ситуация, когда стрелка до разветвления не именована, а после разветвления не именована какая-либо из ветвей. BPwinопределяет такую стрелку как синтаксическую ошибку (рис. 2.114).
Рис. 2.14. Пример неверного именования разветвляющейся стрелки
Правила именования сливающихся стрелок полностью аналогичны − ошибкой будет считаться стрелка, которая после слияния не именована, а до слияния не именована какая-либо из ее ветвей. Для именования отдельной ветви разветвляющихся и сливающихся стрелок следует выделить на диаграмме только одну ветвь, после этого вызвать редактор имени и присвоить имя стрелке. Это имя будет соответствовать только выделенной ветви.
Тоннелирование стрелок. Вновь внесенные граничные стрелки на диаграмме декомпозиции нижнего уровня изображаются в квадратных скобках и автоматически не появляются на диаграмме верхнего уровня (рис. 2.15).
Рис. 2.15. Неразрешенная (unresolved) стрелка
Для их «перетаскивания» наверх нужно щелкнуть по квадратным скобкам граничной стрелки правой кнопкой мыши и в контекстном меню выбрать пункт «ArrowTunnel». ПоявляетсядиалогBorderArrowEditor (рис. 2.16).
Рис. 2.16. ДиалогBorderArrowEditor
ЕсливыбратьопциюResolveittoborderarrow, стрелкамигрируетнадиаграммуверхнегоуровня, аеслиChangeittoresolvedroundedtunnel -стрелкабудетзатоннелированаинепопадетнадругуюдиаграмму. Тоннельная стрелка изображается с круглыми скобками на конце (рис. 2.17).
Рис. 2.17. Типы тоннелирования стрелок
Тоннелирование может быть применено для изображения малозначимых стрелок. Если на какой-либо диаграмме нижнего уровня необходимо изобразить малозначимые данные или объекты, которые не обрабатываются или не используются работами на текущем уровне, то их необходимо направить на вышестоящий уровень (на родительскую диаграмму). Если эти данные не используются на родительской диаграмме, их нужно направить еще выше и т.д. В результате малозначимая стрелка будет изображена на всех уровнях и затруднит чтение всех диаграмм, на которых она присутствует. Выходом является тоннелирование стрелки на самом нижнем уровне. Такое тоннелирование называется «не-в-родительской-диаграмме».
Другим примером тоннелирования может быть ситуация, когда стрелка механизма мигрирует с верхнего уровня на нижний, причем на нижнем уровне этот механизм используется одинаково во всех работах без исключения. (Предполагается, что не нужно детализировать стрелку механизма, т. е. стрелка механизма на дочерней работе именована до разветвления, а после разветвления ветви не имеет собственного имени.) В этом случае стрелка механизма на нижнем уровне может быть удалена, после чего на родительской диаграмме она может быть затоннелирована, а в комментарии к стрелке или в словаре можно указать, что механизм будет использоваться во всех работах дочерней диаграммы декомпозиции. Такое тоннелирование называется «не-в-дочерней-работе» (рис. 2.17).