Это старая версия документа.
При построении диаграмм процессов, для которых в дальнейшем будет проведена имитация, необходимо придерживаться правил, описанных в данном разделе.
При построении диаграммы имитируемого процесса в нотации EPC необходимо разместить на ней обязательно и стартовое, и конечное события (Рис.1).
На диаграмме процесса в нотациях Процесс, Процедура, BPMN необходимо разместить стартовое событие, но конечное - необязательно.
В нотациях Процесс, Процедура, ЕРС, BPMN диаграмму процесса с параллельными ветками необходимо построить так, чтобы параллельные ветки выходили из одной операции, события или оператора, и сходились на одной операции, событии или операторе, либо не сходились нигде на диаграмме (Рис.3). В противном случае, если ветки процессов выходят из одной точки ветвления и лишь часть из них сходится в одной точке слияния, система не будет считать ветки параллельными, и вместо слияния мы получим ветвление.
Пример на диаграмме BPMN: диаграмму процесса с параллельными ветками необходимо построить так, чтобы параллельные ветки выходили из одной задачи, события или шлюза, и сходились на одном шлюзе (Рис. 4), либо не сходились нигде на диаграмме (Рис. 5.).
При имитации процесса в нотации ЕРС, декомпозированного на несколько уровней, связь уровней осуществляется по событиям. Имитация процеса в нотации EPC, дойдя до декомпозированного подпроцесса, переходит на его диаграмму, имитирует его выполнение, возвращается обратно и продолжает имитацию по диаграмме процесса. Переход на диаграмму декомпозированного подпроцесса осуществляется только в том случае, если событие, активизирующее декомпозированный подпроцесс на диаграмме процесса (Рис.6), и хотя бы одно стартовое событие диаграммы декомпозированного подпроцесса (Рис.7) совпадают. Если совпадающих событий нет, имитация останавливается. Возвращение обратно на диаграмму осуществляется по совпадающим событиям. Если совпадений не обнаружено, то имитация останавливается.
Invalid Link | Invalid Link |
При имитации процесса в нотациях Процесс, Процедура, декомпозированного на несколько уровней, связь уровней осуществляется по стрелкам «Связь предшествования». Если на диаграмму процесса в нотации Процесс или Процедура добавлены декомпозированные подпроцессы, то имитация, дойдя до декомпозированного подпроцесса, переходит на него, имитирует его выполнение, возвращается обратно и продолжает имитацию по диаграмме процесса. Переход на диаграмму декомпозированного подпроцесса осуществляется только в том случае, если стрелка «Связь предшествования», входящая в подпроцесс на диаграмме процесса (Рис.8), и хотя бы одна из стрелок, запускающих выполнение диаграммы декомпозированного подпроцесса (Рис.9), совпадают. Если совпадающих стрелок «Связь предшествования» нет, имитация останавливается. Возвращение обратно осуществляется по тому же принципу – совпадение стрелок. Если совпадений не обнаружено, то имитация останавливается.
Invalid Link | Invalid Link |
При имитации процесса, декомпозированного на несколько уровней, связь уровней осуществляется по потокам управления.
Если на диаграмме процесса в нотации BPMN есть декомпозированные подпроцессы, то имитация, дойдя до декомпозированного подпроцесса (Рис. 10), переходит на его диаграмму (Рис. 11), имитирует ее выполнение, возвращается обратно и продолжает имитацию по диаграмме процесса.
Invalid Link | Invalid Link |
В состав подпроцесса может входить стартовое событие лишь одного типа: «Неопределенное». В случае, если подпроцесс содержит стартовые события с триггерами, имитация игнорирует эти стартовые события.
Запуск декомпозированного подпроцесса осуществляется по всем стартовым событиям неопределенного типа, а также по всем элементам потока (события, процессы, шлюзы), не имеющим входящих потоков управления.
Выход обратно из подпроцесса происходит после каждого срабатывания финального события/событий, поскольку их может быть одно или несколько. Если нет финального события, то выход осуществляется по завершению очередного потока. Выход также возможен по альтернативной ветке, если на диаграмме процесса к подпроцессу присоединено событие-обработчик, а на диаграмме подпроцесса сработало совпадающее событие. При этом граничное событие может прервать выполнение основного потока, если оно с типом Прерывающее (двойная сплошная линия), или не прерывать основной поток, если оно с типом Непрерывающее (двойная линия, одна из которых прерывистая)
Событие, прерывающее процесс, должно присутствовать на диаграмме подпроцесса в виде инициатора.
При имитации, дойдя до декомпозированного подпроцесса с граничными прерывающими событиями, система переходит на его диаграмму и выполняет подпроцесс. Если возникло одноименное конечное событие-инициатор, то, вернувшись на вышележащую диаграмму, мы ищем, присоединено ли такое событие на диаграмме. Если событие найдено, то мы двигаемся по потоку управления, исходящему от него. Если событие не найдено, то имитация данного экземпляра процесса останавливается. На диаграмме декомпозиции граничные события никаким особенным способом не обозначаются. Событие, присоединенное к процессу, и событие на его диаграмме - это одно и то же событие с точки зрения названия. Оно может быть и конечным, и промежуточным.
Основной принцип перехода на подпроцесс: в декомпозированном подпроцессе стартуют все стартовые события, которые имитация посчитает возможными стартовать. Например, в EPC не стартует стартовое событие, присоединенное к Интерфейсу процесса, в BPMN стартуют те события, которые имеют тип "Неопределенный", а также начнут исполняться все элементы потока (события, процессы, шлюзы), не имеющие входящих потоков управления.
Выход из имитируемого подпроцесса произойдет, когда все маркеры подпроцесса на всех его уровнях не закончат свое существование.
Если диаграмма процесса описана в нотации Процесс или Процедура (Рис.14), а диаграмма одного из его подпроцессов - в нотации ЕРС (Рис.15), то, при переходе к имитации подпроцесса, возникнут все стартовые события диаграммы, кроме тех, у которых есть входящие связи с элементом "Интерфейс процесса"
Возврат на диаграмму процесса в нотации Процесс или Процедура произойдет только после того, как все потоки, запущенные на диаграмме ЕРС (или BPMN) будут завершены.
Invalid Link | Invalid Link |
Если диаграмма процесса описана в нотации Процесс или Процедура (Рис.16), а диаграмма одного из его подпроцессов - в нотации BPMN (Рис.17), то при переходе к имитации диаграммы BPMN возникнут все элементы без входящих связей (кроме исключений: событийный подпроцесс и т.п.) и все стартовые события диаграммы, кроме тех, у которых есть входящие потоки сообщений с элементом внешний «Пул». Возврат на диаграмму процесса в нотации Процесс или Процедура произойдет только после того, как все потоки, запущенные на диаграмме BPMN, будут завершены.
Если диаграмма процесса описана в нотации EPC, а диаграмма одного из его подпроцессов - в нотации BPMN, то событие на диаграмме EPC и стартовое событие, запускающее процесс BPMN, должны совпадать (в противном случае - выдается предупреждение без остановки имитации). Конечное событие процесса BPMN и событие, идущее после процесса на диаграмме EPC, тоже должны совпадать.
При имитации диаграммы процесса в нотациях Процесс, Процедура, ЕРС, BPMN окончание выполнения одного подпроцесса диаграммы приводит к запуску следующего подпроцесса. При имитации отдельных диаграмм каждый процесс имитируется отдельно от других процессов и запускается на выполнение по своим законам. Если же необходимо передать управление из одного процесса в другой процесс, элементы на диаграммах этих процессов необходимо связать.
Для связи элементов диаграмм различных процессов используются междиаграммная ссылка (МДС) для нотации Процесс и Процедура, интерфейс процесса для нотации EPC и свернутый пул для нотации BPMN.
Если необходимо связать элементы на диаграммах разных процессов, в нотациях Процесс, Процедура используются МДС (Рис.18, Рис.19). При этом переход осуществляется по стрелке «Связь предшествования» (стрелки должны совпадать).
Invalid Link | Invalid Link |
Элементы на диаграммах процессов в нотации ЕРС связываются при помощи Интерфейса процесса (Рис.20, Рис.21). При этом переход осуществляется по событию (события на диаграммах должны совпадать).
Invalid Link | Invalid Link |
Также можно связать элемент диаграммы процесса в нотации ЕРС с элементом диаграммы процесса в нотациях Процесс или Процедура. Для этого необходимо, чтобы на диаграмме процесса в нотации ЕРС (Рис.22) в качестве Интерфейса процесса, который активизируется конечным событием, был отображен Интерфейс Процесса или Процедуры, куда необходимо перейти (Рис.23). При этом конечное событие диаграммы ЕРС и стартовое событие диаграммы Процесса или Процедуры должны совпадать.
Invalid Link | Invalid Link |
Элемент на диаграммах процессов в нотации BPMN можно связать с элементом на диаграмме процесса в нотациях Процесс, Процедура или EPC. Для этого необходимо, чтобы на диаграмме процесса в нотации BPMN (Рис.24) в качестве пула был отображен Процесс, Процедура или EPC, куда необходимо перейти.
На диаграмме Процедуры должно присутствовать событие, совпадающее по имени с событием (с исходящим в пул потоком сообщений) на диаграмме процесса BPMN (Рис.25).
Событие, из которого выходит поток сообщения на диаграмме BPMN, и стартовое событие диаграммы Процесса, Процедуры или EPC должны совпадать. Присутствие интерфейса (ссылающегося на BPMN) на диаграмме EPC не обязательно.
При имитации диаграммы процесса в нотации IDEF0 среди всех его подпроцессов система ищет процессы, описанные в нотациях Процесс, Процедура, ЕРС. Если такие процессы найдены, система представляет процесс IDEF0 в виде отдельных процессов в нотациях Процесс, Процедура, ЕРС и имитирует их выполнение по Правилам имитации многоуровневых процессов.
При этом найденные процессы могут выполняться как последовательно (передавая управление друг другу), так и независимо друг от друга.
Процессы, описанные в нотациях Процесс, Процедура, выполняются последовательно, если они связаны при помощи стрелок «Связь предшествования». Процесс будет запущен столько раз, сколько стрелок «Связь предшествования», которые поступили с диаграмм других процессов, отображено на его диаграмме. Если процесс должен начать выполняться только после окончания выполнения двух других процессов, на диаграмме этого процесса для одной из двух стрелок, запускающих процесс на выполнение, необходимо оставить тип «Связь предшествования», а для другой - установить тип «Поток объектов». Тип «Связь предшествования» рекомендуется оставить для стрелки, исходящей из процесса с большей продолжительностью.
Процессы, описанные в нотациях Процесс, Процедура, также выполняются последовательно, если они связаны при помощи МДС.
Для задания последовательности выполнения процессов в нотации ЕРС или процессов в разных нотациях (Процесс/Процедура и ЕРС) их необходимо связать по правилам, описанным в разделе «Правила связи диаграмм отдельных процессов».
Процессы, которые не связаны между собой, запускаются на выполнение независимо друг от друга, каждый по своим законам, и могут выполняться параллельно.
Если среди подпроцессов процесса в нотации IDEF0 есть недекомпозированные процессы, расположенные на диаграммах IDEF0, производится псевдоимитация этих подпроцессов для учета их параметров в расчете временных и стоимостных параметров процесса IDEF0.
Имитация выполнения типового процесса производится, если процесс описан в одной из нотаций: Процесс, Процедура, ЕРС. При этом должны соблюдаться следующие правила моделирования: