Это старая версия документа.
Анализ деятельности компании с помощью методики имитационного моделирования осуществляется в 3 этапа:
Если проводится имитация процесса в нотации Процесс, Процедура, ЕРС или BPMN, система последовательно имитирует выполнение процесса по диаграмме. Если подпроцессы декомпозированы, то система переходит на диаграмму подпроцесса, имитирует ее выполнение и возвращается обратно.
Время выполнения и Время ожидания операции могут быть заданы в виде случайных величин. Ход выполнения процессов в нотациях Процесс, Процедура, ЕРС и BPMN в общем случае, носит вероятностный характер. Поэтому длительность процесса, в общем случае, является случайной величиной.
Для понимания того, что такое длительность процесса, необходимо ввести такое понятие как токен (token). Токен - это виртуальная "эстафетная палочка", которая передается от одного элемента диаграммы другому элементу. (Под элементом здесь понимается операция, оператор слияния, или ветвления). Токен неделим. При этом токен может:
Пример движения токена по диаграмме можно посмотреть тут: http://www.diveintobpm.org/laszlo-explorer/WFWPatterns/Pattern19.html?&lzt=html&src=/laszlo-explorer/WFWPatterns/Pattern19.html,
или тут:
http://www.workflowpatterns.com/patterns/control/structural/wcp10_animation.php
В момент срабатывания стартового события возникает токен, который начинает движение по диаграмме процесса. Время от старта этого токена до момента, когда все токены, порожденные этим токеном, закончат свое существование и будет длительностью экземпляра процесса.
Последовательный блок
При определении длительности выполнения последовательности действий (Рис.1) или функций (Рис.2) их продолжительность суммируется.
Рисунок 1. Последовательное выполнение действий | Рисунок 2. Последовательное выполнение функций |
Параллельный блок
При параллельном выполнении веток процесса последовательно выполняются действия (Рис.3) или функции (Рис.4) всех веток, но в длительность процесса включается продолжительность той ветки, длительность выполнения которой наибольшая.
Рисунок 3. Параллельное выполнение действий | Рисунок 4. Параллельное выполнение функций |
Блок с условиями
В тех случаях, когда действия Процедуры, Процесса выполняются в зависимости от какого-то условия, для обозначения условия перехода используется специальный элемент - Решение. Для стрелок "Связь предшествования", исходящих из этого элемента, задается Условие перехода по этой стрелке к следующим действиям или Вероятность этого перехода.
В тех случаях, когда функции EPC выполняются в зависимости от какого-то условия, для обозначения условия перехода используются операторы , . Для событий, следующих за этими операторами, задается Условие перехода к следующим функциям или Вероятность этого перехода (Рис.5, Рис.6, Рис.7).
При имитации процесса, как только система достигает блока "Решение" или одного из операторов, она каждый раз в соответствии с заданным Условием или Вероятностью принимает решение, какой путь выбрать.
Длительность экземпляра сложного процесса, который состоит из декомпозированных подпроцессов и блоков решения, определяется интервалом времени от момента рождения первого токена до момента, когда на на всех уровнях всех подпроцессов не закончит свое существание последний токен.
Рисунок 5. Условное выполнение процессов |
Рисунок 6. Условное выполнение процессов в цикле |
Рисунок 7. Комбинация цикла и нескольких условий выхода из цикла |
Правила расчета длительности процессов в нотации IDEF0
Если проводится имитация процесса в нотации IDEF0, подпроцессы которого описаны в нотациях Процесс, Процедура, ЕРС, BPMN система представляет процесс IDEF0 в виде отдельных процессов в нотациях Процесс, Процедура, ЕРС, BPMN и имитирует их выполнение.
При этом если эти процессы выполняются последовательно (передавая управление друг другу), для определения длительности процесса IDEF0 система суммирует длительности подпроцессов.
Если же эти процессы выполняются независимо друг от друга, то длительность процесса IDEF0 не рассчитывается.
Длительность процесса IDEF0 также не рассчитывается в случае, если на его диаграмме присутствует хотя бы один процесс, в перечне подпроцессов которого нет процессов, описанных в нотациях Процесс, Процедура, ЕРС, BPMN.