Интерфейсная дуга (иначе поток, стрелка) изображает объекты, которые влияют на функцию, отображенную данным функциональным блоком, одним из четырех вышеописанных способов (Output, Input, Control, Mechahism). В отличие от традиционных блок-схем процессов в IDEF0 стрелки не представляют поток или последовательность событий. Они лишь показывают, какие данные или материальные объекты должны поступить на вход функции для того, чтобы эта функция могла выполняться. На диаграмме интерфейсные дуги изображаются в виде однонаправленных стрелок.
Началом и концом каждой интерфейсной дуги (кроме дуг, входящих в первый блок и исходящих из последнего) могут являться только функциональные блоки, причем в качестве источника выступает выходная (Output) сторона блока, а в качестве приемника - произвольная входная (Input, Control, Mechahism).
Для каждого блока обязательно должны присутствовать управляющая интерфейсная дуга (регламент, определяющий выполнение процесса или операции) и выходная интерфейсная дуга (результат выполнения процесса или операции). Необходимость наличия управляющих интерфейсных дуг в диаграммах IDEF0 отличает их от диаграмм потоков других нотаций.
Правила построения диаграмм в стандарте IDEF0.
В общем случае методология может характеризоваться по широте охвата в описании моделируемого объекта и по степени понятности и удобства восприятия. Причем данные характеристики связаны обратной зависимостью: с увеличением глубины и функциональности модели она становится более загруженной и сложной для восприятия. Для решения этой проблемы в методологию включают строгие стандарты, регламентирующие составления моделей, например требование к формату стрелки или блока. В приведенном примере использование различных типов стрелок и блоков для объектов с различными свойствами позволит сделать модель более информативной для человека, знакомого со стандартом, избежав нагромождения дополнительных элементов и комментариев [2].
Одним из приемов, предназначенных для облегчения восприятия модели, применяющимся при построении диаграмм процессов и потоков, является декомпозиция. Он заключается в представлении сложных действий в виде последовательности простых шагов.
Построение модели IDEF0 принято начинать с представления системы в виде единственного функционального блока. Подключаемые к нему интерфейсные дуги представляют собой объекты (ресурсы, регламенты, результат всего процесса), задействованные в процессе. Такая диаграмма именуется контекстной диаграммой верхнего уровня, и имеет номер «А-0».
Единственная функция, представленная на контекстной диаграмме верхнего уровня, может быть разложена на основные подфункции посредством создания дочерней диаграммы. В свою очередь, каждая из этих подфункций может быть разложена на составные части посредством создания дочерней диаграммы следующего, более низкого уровня, на которой некоторые или все функции также могут быть разложены на составные части. Каждая дочерняя диаграмма содержит дочерние блоки и стрелки, обеспечивающие дополнительную детализацию родительского блока. Дочерняя диаграмма, создаваемая при декомпозиции, охватывает ту же область, что и родительский блок, но описывает ее более подробно. Таким образом, дочерняя диаграмма как бы вложена в свой родительский блок.
Стандарт жестко регламентирует методику образования номеров блоков. Номер каждого блока состоит из двух частей: префикса, единого для всех функциональных блоков в пределах одной диаграммы, и собственно номера блока. Префикс диаграммы совпадает с номером блока, детализацией которого является эта диаграмма.
Диаграмме может быть поставлен в соответствие структурированный текст, представляющий собой краткий комментарий к содержанию диаграммы. Текст используется для объяснений и уточнений характеристик, потоков, внутриблочных соединений и т.д. Текст не должен использоваться для описания и без того понятных блоков и стрелок на диаграммах. Глоссарий предназначен для определения аббревиатур (акронимов), ключевых слов и фраз, используемых в качестве имен и меток на диаграммах. Глоссарий определяет понятия и термины, которые должны быть одинаково понимаемы всеми участниками разработки и пользователями модели, чтобы правильно интерпретировать ее содержание.
Рис. 2.
Блоки на диаграмме должны располагаться по диагонали в порядке присвоенных номеров – от левого верхнего угла диаграммы до правого нижнего. Блоки на диаграмме, расположенные вверху слева «доминируют» над блоками, расположенными внизу справа. «Доминирование» означает влияние, которое блок оказывает на те блоки, с которыми он взаимодействует. Доминирование между блоками отражает авторское понимание описываемого процесса.
Диаграммы более низкого уровня (не являющиеся контекстными) должны содержать от трех и до шести блоков. Это ограничение предназначено для удобства использования диаграмм. Опыт показывает, что такого количества блоков на диаграмме оказывается достаточно для построения модели [9].
Также число интерфейсных дуг, подходящих к одному функциональному блоку, как и число дуг, выходящих из одного блока, не должно превышать дуг четырех.
Стандарт IDEF3
Стандарт IDEF0, который был рассмотрен ранее, является развитием классического DFD – подхода и предназначен для описания бизнес-процессов верхнего уровня. Для описания временной последовательности и алгоритмов выполнения работ стандарт IDEF0 не подходит [7]. Для решения этой задачи стандарт IDEF0 получил дальнейшее развитие, в результате чего был разработан стандарт IDEF3, который входит в семейство стандартов IDEF.
Стандарт IDEF3 предназначен для описания бизнес-процессов нижнего уровня и содержит объекты – логические операторы, с помощью которых показывают альтернативы и места принятия решений в бизнес-процессе, а также объекты – стрелки, с помощью которых показывают временную последовательность работ в бизнес-процессе.
В стандарте IDEF3 связи между работами делятся на три типа, обозначения, названия и смыл которых, приведены в таблице.
Таблица 1. Типы связей между работами в стандарте IDEF3.
Связь предшествования | ![]() | Применяется, когда второе действие начинает выполняться после завершения первого. |
Связь отношения | ![]() | Применяется, когда второе действие может начаться и даже закончиться до того момента, когда закончится выполнение первого действия |
Связь потоков объектов | ![]() | Применяется, когда второе действие начинает выполняться после завершения первого. При этом результатом первого действия является объект, название которого написано над стрелкой. Этот объект подается на вход второго действия. |
Помимо наличия нескольких типов связей между работами в стандарте IDEF3 есть логические операторы, которые в данном случае называются перекрестками. Они также делятся на несколько типов: "Исключающий ИЛИ", "И" и "ИЛИ".
Перекрестки "И" и "ИЛИ" подразделяются еще на два подтипа – синхронные и асинхронные. Перекрестки синхронного типа обозначают, что последующие работы запускаются одновременно после завершения работы предшествующей. Перекрестки асинхронного типа требований к одновременности не предъявляют.