Нотация EPC (Event-Driven Process Chain - событийная цепочка процессов) используется для описания процессов нижнего уровня. Диаграмма процесса в нотации EPC, представляет собой упорядоченную комбинацию событий и функций. Для каждой функции могут быть определены начальные и конечные события, участники, исполнители, материальные и документальные потоки, сопровождающие её, а также проведена декомпозиция на более низкие уровни. Декомпозиция может производиться в нотациях EPC или BPMN.
При декомпозиции процесса ЕРС, расположенного на диаграмме SADT, стрелки с диаграммы SADT на диаграмму ЕРС не переносятся.
Название | Кнопка | Графический символ | Описание |
---|---|---|---|
Функция | ![]() | ![]() | Блок представляет собой функцию - действие или набор действий, выполняемых над исходным объектом (документом, ТМЦ и прочим) с целью получения заданного результата. Внутри блока помещается наименование функции. Временная последовательность выполнения функций задается расположением функций на диаграмме процесса сверху вниз. |
Событие | ![]() ![]() | ![]() | Событие - состояние, которое является существенным для целей управления бизнесом и оказывает влияние или контролирует дальнейшее развитие одного или более бизнес-процессов. Элемент отображает события, активизирующие функции или порождаемые функциями. Внутри блока помещается наименование события. |
Стрелка | ![]() | ![]() | Стрелка отображает связи элементов диаграммы процесса EPC между собой. Связь может быть направленной и ненаправленной в зависимости от соединяемых элементов и типа связи. |
Оператор AND ("И") | ![]() | ![]() | Оператор "И" используется для обозначения слияния/ветвления как функций, так и событий. Если завершение выполнения функции должно инициировать одновременно несколько событий, то это обозначается с помощью оператора "И", следующего после функции и перед событиями. На рисунке (Рис.1) завершение выполнения Функции одновременно инициирует события: Событие 1 и Событие 2. ![]() Рисунок 1
Если событие происходит только после обязательного завершения выполнения нескольких функций, то это обозначается с помощью оператора "И", следующего после функций и перед одиночным событием. На рисунке (Рис.2) Событие произойдет только после обязательного завершения Функции 1 и Функции 2. ![]() Рисунок 2
Если функция может начать выполняться только после того, как произойдут несколько событий, то это обозначается с помощью оператора "И", следующего после событий и перед функцией. На рисунке (Рис.3) Функция начнет выполняться только после того, как произойдут Событие 1 и Событие 2. ![]() Рисунок 3 Если одно событие может инициировать одновременное выполнение нескольких функций, то это обозначается с помощью оператора "И", следующего после события и перед функциями. На рисунке (Рис.4) Событие одновременно инициирует выполнение Функции 1 и Функции 2. ![]() Рисунок 4 |
Оператор OR ("ИЛИ") | ![]() | ![]() | Оператор "ИЛИ" используется для обозначения слияния/ветвления функций и для слияния событий. По правилам нотации EPC после одиночного события не может следовать разветвляющий оператор "ИЛИ". Если завершение выполнения функции может инициировать одно или несколько событий, то это обозначается с помощью оператора "ИЛИ", следующего после функции и перед событиями. На рисунке (Рис.5) завершение выполнения Функции 1 может инициировать 3 вида ситуаций: только Событие 1, только Событие 2, одновременно и Событие 1, и Событие 2. ![]() Рисунок 5
Если событие происходит после завершения выполнения одной или нескольких функций, то это обозначается с помощью оператора "ИЛИ", следующего после функций и перед одиночным событием. На рисунке (Рис.6) Событие может произойти либо после завершения выполнения Функции 1, либо после завершения выполнения Функции 2, либо после завершения выполнения и Функции 1, и Функции 2. ![]() Рисунок 6 Если функция может начать выполняться после того, как произойдет одно или несколько событий, то это обозначается с помощью оператора "ИЛИ", следующего после событий и перед функцией. На рисунке (Рис.7) Функция может начать выполняться либо после того, как произойдет Событие 1, либо после того, как произойдет Событие 2, либо после того, как произойдут оба события: Событие 1, и Событие 2. ![]() Рисунок 7 |
Оператор XOR ("Исключающее ИЛИ") | ![]() | ![]() | Оператор "Исключающее ИЛИ" используется для обозначения слияния/ветвления функций и для слияния событий. По правилам нотации EPC после одиночного события не может следовать разветвляющий оператор "Исключающее ИЛИ". Если завершение выполнения функции может инициировать только одно из событий в зависимости от условия, то это обозначается с помощью оператора "Исключающее ИЛИ", следующего за функцией и перед событиями. На рисунке (Рис.8) Функция инициирует либо только Событие 1, либо только Событие 2. ![]() Рисунок 8
Если событие происходит сразу после завершения выполнения либо одной функции, либо другой, то это обозначается с помощью оператора "Исключающее ИЛИ", следующего после функций и перед одиночным событием. На рисунке (Рис.9) Событие может произойти либо сразу после завершения выполнения Функции 1, либо сразу после завершения выполнения Функции 2. ![]() Рисунок 9 Если функция может начать выполняться сразу после того, как произойдет либо одно событие, либо другое, то это обозначается с помощью оператора "Исключающее ИЛИ", следующего после нескольких событий и перед функцией. На рисунке (Рис.10) Функция может начать выполняться сразу после того, как произойдет либо Событие 1, либо Событие 2. ![]() Рисунок 10 |
Интерфейс процесса | ![]() | ![]() | Элемент, обозначающий внешний (по отношению к текущей диаграмме) процесс или функцию. Используется для указания взаимосвязи процессов: - обозначает предыдущий или следующий процесс по отношению к диаграмме рассматриваемого процесса; - обозначает процесс, откуда поступил или куда передается объект. Внутри блока помещается наименование внешнего процесса. На рисунке (Рис.11) показано, что договор является результатом выполнения процесса "Заключение договора". ![]() Рисунок 11
На рисунке (Рис.12) показано, что после окончания Процесса 1 (и наступления Событие 1) начинает выполняться Процесс 2. ![]() Рисунок 12. Диаграмма Процесса 1 На диаграмме Процесса 2 (Рис.13) показано, что перед началом Процесса 2 был завершен Процесс 1, инициировавший Событие 1. ![]() Рисунок 13. Диаграмма Процесса 2 |
Субъект | ![]() | ![]() | Используется для отображения на диаграмме организационных единиц (должности, подразделения, роли, внешнего субъекта) - исполнителей, владельцев или участников функций. Внутри блока помещается наименование организационной единицы. |
Бумажный документ | ![]() | ![]() | Используется для отображения на диаграмме бумажных документов, сопровождающих выполнение функции. Внутри блока помещается наименование бумажного документа. |
Электронный документ | ![]() | ![]() | Используется для отображения на диаграмме электронных документов, сопровождающих выполнение функции. Внутри блока помещается наименование электронного документа. |
ТМЦ | ![]() | ![]() | Используется для отображения на диаграмме товарно-материальных ценностей (ТМЦ), сопровождающих выполнение функции. Внутри блока помещается наименование ТМЦ. |
Информация | ![]() | ![]() | Используется для отображения на диаграмме информационных потоков, сопровождающих выполнение функции. Внутри блока помещается наименование информационного потока. |
Информационная система | ![]() | ![]() | Используется для отображения на диаграмме информационной системы, поддерживающей выполнение функции. Внутри блока помещается наименование информационной системы. |
Модуль информационной системы | ![]() | ![]() | Используется для отображения на диаграмме модуля информационной системы, поддерживающего выполнение функции. Внутри блока помещается наименование модуля информационной системы. |
Функция информационной системы | ![]() | ![]() | Используется для отображения на диаграмме функции информационной системы, поддерживающей выполнение функции. Внутри блока помещается наименование функции информационной системы. |
База данных | ![]() | ![]() | Используется для отображения на диаграмме базы данных, сопровождающей выполнение функции. Внутри блока помещается наименование базы данных. |
Термин | ![]() | ![]() | Используется для отображения на диаграмме объектов, сопровождающих выполнение функции. Наименования этих объектов - термины, используемые в организации. Внутри блока помещается наименование термина. Элемент может быть использован для обозначения данных, передаваемых между процессами или обрабатываемых при выполнении процессов. Элемент может быть также использован для обозначения статусов бумажных/электронных документов и других элементов справочника "Объекты деятельности". На рисунке (Рис.14) статус документа "Акт выполненных работ" устанавливается с помощью термина "Подписанный". ![]() Рисунок 14 |
Набор объектов | ![]() | ![]() | Используется для отображения на диаграмме наборов объектов, сопровождающих выполнение функции, например, "Документация по проекту". Внутри блока помещается наименование набора объектов. |
Прочее | ![]() | ![]() | Используется для отображения на диаграмме потоков объектов, которые нельзя отнести ни к одной из предопределенных групп справочника "Объекты деятельности". Внутри блока помещается наименование прочего объекта. |
Команда | Графический символ | Описание |
---|---|---|
Удалить тип связи по умолчанию | ![]() | Кнопка предназначена для удаления типов связей, установленных пользователем по умолчанию. |
Показать/убрать все типы связей на диаграмме | ![]() | Кнопка предназначена для показа наименований всех типов связей, наведенных на диаграмме. |
Переместить контекст функции с вышележащей диаграммы | ![]() | Кнопка предназначена для перемещения с вышележащей диаграммы (если диаграмма представлена в нотации EPC) всех элементов, которые связаны с декомпозируемой функцией. |
Дополнительно к возможности показывать/убирать наименования типов связей на диаграмме с помощью кнопки в справочнике "Типы связей" существует возможность установить показ наименования того или иного типа связи на всех диаграммах, где эта связь наведена. Для этого необходимо проставить галочку у параметра "Видимость типа связи" для данной связи (Рис.15).
Типы связей, которые могут быть наведены между элементами на диаграмме EPC, перечислены в таблицах (Табл. 2 - Табл. 11). При необходимости перечень типов связей может быть изменен.
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
База данных | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса в базу данных вносятся изменения. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что база данных передается из одного процесса в другой. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса создается новая база данных. | ![]() |
|
Документ | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса в документ вносятся изменения. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что документ передается из одного процесса в другой. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса создается новый документ. | ![]() |
|
Информация | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса изменяется информация. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что информация передается из одного процесса в другой. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса появляется информация. | ![]() |
|
ТМЦ | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса изменяется ТМЦ. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что ТМЦ передается из одного процесса в другой. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса формируется ТМЦ. | ![]() |
|
Программный продукт | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса изменяется Информационная система, ее модуль или функция. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что Информационная система, ее модуль или функция передается из одного процесса в другой. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса создается Информационная система, ее модуль или функция. | ![]() |
|
Оператор | порождает событие через | Связь используется для отображения хода выполнения процесса. | ![]() |
Процесс | предшествует | Связь используется, если бизнес-аналитик принимает решение использовать для отображения хода выполнения процесса только функции, без событий. | ![]() |
Событие | порождает | Связь используется для отображения хода выполнения процесса. | ![]() |
Термин | изменяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса изменяется термин. | ![]() |
имеет на выходе | Связь используется, если необходимо отобразить, что термин передается из одного процесса в другой. | ![]() |
|
помещает в архив | Связь используется, если необходимо отобразить, что в результате выполнения процесса термин помещается в архив. | ![]() |
|
распределяет | Связь используется, если необходимо отобразить, что в рамках выполнения процесса термин распределяется между субъектами или процессами. | ![]() |
|
создает на выходе | Связь используется, если необходимо отобразить, что в результате выполнения процесса формируется термин. | ![]() |
|
считывает | Связь используется, если необходимо отобразить, что в рамках выполнения процесса считывается термин. | ![]() |
|
уничтожает | Связь используется, если необходимо отобразить, что в результате выполнения процесса термин уничтожается. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | выполняет | Связи используются для отображения владельцев, исполнителей процесса или субъектов, принимающих участие в выполнении процесса. | ![]() |
д/б информирован о выполнении | |||
д/б информирован о нестандартном завершении | |||
должен информировать о результатах выполнения | |||
отвечает за техническую часть | |||
отвечает по ИТ за | |||
принимает решение по | |||
способствует при выполнении | |||
утверждает результат | |||
участвует в качестве консультанта | |||
является владельцем | |||
Событие | обеспечивает | Связь используется, если необходимо отобразить, что субъект способствует возникновению события. | ![]() |
является владельцем | Связь используется, если необходимо отобразить, что субъект является ответственным за возникновение события. | ![]() |
|
Термин | имеет доступ к | Связь используется, если необходимо отобразить, что субъект имеет доступ к термину (информации о термине). | ![]() |
является владельцем | Связь используется, если необходимо отобразить, что субъект является ответственным за формирование термина или актуализацию информации о термине. | ![]() |
|
База данных | обеспечивает | Связь используется, если необходимо отобразить, что субъект обеспечивает наличие актуальной информации в базе данных или является ответственным за формирование базы данных. | ![]() |
Документ | обеспечивает | Связь используется, если необходимо отобразить, что субъект является ответственным за формирование документа или поддержание документа в актуальном состоянии. | ![]() |
Информация | обеспечивает | Связь используется, если необходимо отобразить, что субъект является ответственным за предоставление актуальной информации. | ![]() |
ТМЦ | обеспечивает | Связь используется, если необходимо отобразить, что субъект обеспечивает наличие ТМЦ. | ![]() |
Программный продукт | отвечает за разработку | Связь используется, если необходимо отобразить, что субъект отвечает за разработку информационной системы, ее модуля или функции. | ![]() |
отвечает за техническую часть | Связь используется, если необходимо отобразить, что субъект отвечает за техническую часть (оборудование, системное ПО и т.д.) информационной системы, ее модуля или функции. | ![]() |
|
является пользователем | Связь используется, если необходимо отобразить, что субъект является пользователем информационной системы, ее модуля или функции. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | активизирует | Связь используется для отображения хода выполнения процесса. | ![]() |
Субъект | используется | Связь используется, если необходимо отобразить, что субъект ориентируется на возникновение события для определения времени старта процесса. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
База данных | создает на выходе | Связь используется, если необходимо отобразить, что база данных формируется в результате работы в информационной системе. | ![]() |
Документ | создает на выходе | Связь используется, если необходимо отобразить, что документ автоматически формируется в информационной системе. | ![]() |
Информация | использует | Связь используется, если необходимо отобразить, что для внесения данных в информационную систему используется информация. | ![]() |
ТМЦ | использует | Связь используется, если необходимо отобразить, что для внесения данных в информационную систему используется ТМЦ. | ![]() |
Процесс | поддерживает | Связь используется, если необходимо отобразить, что процесс выполняется с использованием информационной системы, ее модуля или функции. | ![]() |
Термин | использует | Связь используется, если необходимо отобразить, что для внесения данных в информационную систему используется термин. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | предоставляет входные данные для | Связь используется, если необходимо отобразить, что выполнение процесса осуществляется с использованием документа. | ![]() |
Событие | устанавливает | Связь используется, если необходимо отобразить, что поступление документа инициировало возникновение событие. | ![]() |
Субъект | используется | Связь используется, если необходимо отобразить, что для осуществления своей деятельности субъект использует документ. | ![]() |
База данных | предоставляет входные данные для | Связь используется, если необходимо отобразить, что заполнение базы данных осуществляется с использованием документа. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | предоставляет входные данные для | Связь используется, если необходимо отобразить, что выполнение процесса осуществляется с использованием базы данных. | ![]() |
Событие | устанавливает | Связь используется, если необходимо отобразить, что возникновение события было инициировано базой данных. | ![]() |
Субъект | используется | Связь используется, если необходимо отобразить, что для осуществления своей деятельности субъект использует базу данных. | ![]() |
Программный продукт | предоставляет входные данные для | Связь используется, если необходимо отобразить, что работа в программном продукте осуществляется с использованием базы данных. | ![]() |
Документ | создает на выходе | Связь используется, если необходимо отобразить, что документ может быть сформирован из базы данных. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | используется | Связь используется, если необходимо отобразить, что выполнение процесса осуществляется с использованием информации. | ![]() |
является входом для | Связь используется, если необходимо отобразить, что информация, поступившая на вход процесса, в результате выполнения процесса преобразуется в другую информацию, документ или объект. | ![]() |
|
Событие | устанавливает | Связь используется, если необходимо отобразить, что поступление информации инициировало возникновение события. | ![]() |
Субъект | используется | Связь используется, если необходимо отобразить, что для осуществления своей деятельности субъект использует информацию. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | используется | Связь используется, если необходимо отобразить, что выполнение процесса осуществляется с использованием ТМЦ. | ![]() |
является входом для | Связь используется, если необходимо отобразить, что ТМЦ, поступившие на вход процесса, в результате выполнения процесса преобразуются из одного состояния в другое. | ![]() |
|
Событие | устанавливает | Связь используется, если необходимо отобразить, что возникновение события было инициировано ТМЦ. | ![]() |
Субъект | используется | Связь используется, если необходимо отобразить, что для осуществления своей деятельности субъект использует ТМЦ. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | проверяется | Связь используется, если необходимо отобразить, что в рамках выполнения процесса проверяется термин. | ![]() |
утверждается (кем) | Связь используется, если необходимо отобразить, что в рамках выполнения процесса утверждается термин. | ![]() |
|
является входом для | Связь используется, если необходимо отобразить, что термин, поступивший на вход процесса, в результате выполнения процесса преобразуется из одного состояния в другое. | ![]() |
|
Событие | устанавливает | Связь используется, если необходимо отобразить, что возникновение события инициировано термином. | ![]() |
База данных | определяется | Связь используется, если необходимо отобразить, что значение термина определено в базе данных. | ![]() |
устанавливает статус | Связь используется для отображения статуса базы данных. | ![]() |
|
Документ | определяется | Связь используется, если необходимо отобразить, что значение термина определено в документе. | ![]() |
устанавливает статус | Связь используется для отображения статуса документа. | ![]() |
|
Информация | определяется | Связь используется, если необходимо отобразить, что значение термина определяется информацией. | ![]() |
устанавливает статус | Связь используется для отображения статуса информации. | ![]() |
|
ТМЦ | определяется | Связь используется, если необходимо отобразить, что значение термина определяется ТМЦ. | ![]() |
устанавливает статус | Связь используется для отображения статуса ТМЦ. | ![]() |
Элемент, с которым устанавливается связь | Тип связи | Назначение связи | Пример использования связи |
---|---|---|---|
Процесс | активизирует | Связь используется для отображения хода выполнения процесса. | ![]() |
Событие | порождает событие через | Связь используется для отображения хода выполнения процесса. | ![]() |
Оператор | предшествует | Связь используется для отображения хода выполнения процесса. | ![]() |
1. Диаграмма функции EPC должна начинаться как минимум одним стартовым событием (стартовое событие может следовать за интерфейсом процесса) и завершаться как минимум одним конечным событием (конечное событие может предшествовать интерфейсу процесса).
2. События и функции по ходу выполнения процесса должны чередоваться. Решения о дальнейшем ходе выполнения процесса принимаются функциями.
3. Рекомендуемое количество функций на диаграмме - не более 20. Если количество функций диаграммы значительно превышает 20, то существует вероятность, что неправильно выделены процессы на верхнем уровне и необходимо произвести корректировку модели.
4. События и функции должны содержать строго по одной входящей и одной исходящей связи, отражающей ход выполнения процесса.
5. События и операторы, окружавшие функцию на вышележащей диаграмме (Рис.16), должны быть начальными/результирующими событиями и операторами на диаграмме декомпозиции функции (Рис.17).
![]() | ![]() |
Рисунок 16. Диаграмма процесса, на которой встречается Функция 1 | Рисунок 17. Диаграмма декомпозиции Функции 1 |
6. На диаграмме не должны присутствовать объекты без единой связи.
7. Каждый оператор слияния должен обладать хотя бы двумя входящими связями и только одной исходящей, оператор ветвления - только одной входящей связью и хотя бы двумя исходящими. Операторы не могут обладать одновременно несколькими входящими и исходящими связями.
8. Если оператор обладает входящей связью от элемента "событие", то он должен обладать исходящей связью к элементу "функция" и наоборот.
9. За одиночным событием не должны следовать операторы "OR (ИЛИ)" или "XOR (Исключающее ИЛИ)".
10. Операторы могут объединять или разветвлять только функции или только события. Одновременное объединение/ветвление функции и события невозможно.
11. Оператор, разветвляющий ветки, и оператор, объединяющий эти ветки, должны совпадать. Допускается также ситуация, когда оператор ветвления "И", оператор объединения - "ИЛИ".
Примеры допустимых ситуаций (Рис.18, Рис.19, Рис.20, Рис.21):
![]() | ![]() | ![]() | ![]() |
Рисунок 18 | Рисунок 19 | Рисунок 20 | Рисунок 21 |
Пример недопустимой ситуации (Рис.22):
Пример диаграммы процесса в нотации EPC приведен на Рис.23:
Подробнее о формировании модели бизнес-процессов см. в Руководство пользователя, главе Создание модели деятельности организации.