УДК 681.3.06 8-908-207-50-60 А.А. Зырянов, М.Г. Доррер
АЛГОРИТМ ТРАНСЛЯЦИИ МОДЕЛИ БИЗНЕС-ПРОЦЕССОВ В МОДЕЛЬ GERT-СЕТИ
Авторами разработан алгоритм, позволяющий однозначно конвертировать матричную форму описания модели бизнес-процессов в формате ARISeEPC в матричную форму описания GERT-сети. Ключевые слова: трансляция, бизнес-процесс, GERT, ГЕРТ, ARIS eEPC, модель.
A.A. Zyryanov, M.G. Dorrer
THE ALGORITHM OF BUSINESS PROCESSES MODEL TRANSLATION INTO THE GERT-NETWORKMODEL
The algorithm allowing to definitely convert the matrix form of business processes model description in ARIS eEPCformat to the matrix description form of GERT-network is developed by the authors of the article.
Key words: translation, business process, GERT, ARIS eEPC, model.
Введение. Процессный подход к управлению включает в себя как один из этапов формализацию и описание бизнес-процессов, которые позволяют показать деятельность организации в виде цепочек создания ценности для конечного потребителя.
Повышение эффективности деятельности организации связано с совершенствованием бизнес-процессов. Для этого современная управленческая наука использует моделирование и анализ бизнес-процессов с целью обнаружения «узких мест», оценки структуры и показателей бизнес-процессов и т.п. Для моделирования и анализа бизнес-процессов используются различные подходы и средства. В первую очередь следует отметить методологии описания бизнес-процессов IDEF, ARIS, bPm. Поддерживающие данные методологии программные средства - AllFusion Process Modeler (BPWin), ARIS Platform позволяют как осуществлять формальное описание моделей деятельности, так и производить оценку числовых параметров процессов - времени выполнения процесса, стоимости процесса и т.п. Решение данной задачи достигается как непосредственно (например, расчет стоимости процессов с использованием методики функционально-стоимостного анализа в BPWin), так и с использованием подключаемых программных модулей или модулей расширения (BPArena, ARIS Simulation). Для анализа числовых параметров бизнес-процессов могут применяться и непосредственно программные продукты для имитационного моделирования - AnyLogic, GPSS и др. Также при моделировании и анализе бизнес-процессов используется аппарат сетей Петри [1, 2], аппарат цепей Маркова и др.
Однако при анализе числовых показателей бизнес-процессов аналитики неизбежно сталкиваются с дилеммой: либо обеднение функциональности анализа путем исследования лишь детерминированных показателей времени и стоимости процесса, либо получение вероятностных данных процесса. При этом ценой приемлемой точности в имитационном эксперименте является очень высокая трудоемкость решения [3].
Таким образом, авторы ставят перед собой цель разработать модели и алгоритмы, позволяющие прогнозировать числовые параметры бизнес-процесса, а именно время выполнения, движение материальных ресурсов (включая деньги) и загрузку трудовых ресурсов, при условии более высокой точности и более низкой трудоемкости, чем это позволяет сделать имитационный эксперимент.
Авторы предположили, что данная задача может быть решена применением для числовой оценки бизнес-процессов аппарата GERT-сетей (GERT - graphical evaluation and review technique). Классическое описание GERT-сетей приведено в декларации Прицкера [6], на русском языке описание GERT-сетей можно найти в книге Филлипса и Гарсиа-Диаса [4].
Описание бизнес-процессов. Для описания бизнес-процессов в статье будет использоваться нотация ARIS eEPC. Она принадлежит к классу событийных моделей деятельности. По изобразительной мощности она примерно соответствует IDEF3 и UML State-Chart Diagram, обладая по сравнению с ними рядом преимуществ, главное из которых - большее количество символов модели, специально адаптированных для предметных областей, - офисные процессы, производственные процессы. В данной работе мы будем использовать подмножество модели eEPC, изображенное на рисунке 1.
--------------в - логические г - стрелка связи
а - функция б - событие операторы между объектами
Рис. 1. Объекты модели ARIS eEPC
Для решения задачи трансформации модели еЕРС в GERT-сеть опишем обе модели в графовом виде, а затем произведем сопоставление графов.
Модель в нотации ARIS еЕРС может быть описана графом D
где о о чество символов
О=40,1о1
5^ - множество символов модели еЕРС (процессы, события, перекрестки); д - коли; 1а - множество связей (дуг) модели еЕРС; а - количество дуг; V/г- е Ь0,
соединяющая объекты модели еЕРС, характеризуется атрибутом ри - вероятность выполнения дуги \1;
Fk =
/ц - ахq матрица; Fq = fft - qха матрица; - инцидентность lt с sf (связей с
символами); - инцидентность sJ■ с I, (символов со связями).
Х0 е80,В0 е$0,И0 где Х0 = 4, хн - множество объектов типа «событие»;
и - количество событий;
В0= А,
b
множество объектов типа «функция»;
\т - количество функций; каждая функция характеризуется рядом атрибутов, значимым из которых является 1Ът - время работы функции Ьт.
Кроме времени, для функции могут быть заданы другие параметры работы (стоимость, количество необходимых ресурсов и т.п.).
Ro =
rk - множество объектов типа «правило» (AND, OR, XOR), задающих логику ветвле-
ния/слияния бизнес-процесса; k - количество правил. Множество правил ветвления R0 состоит из элементов множества RAnd, ROr, RXor, где RAnd - множество правил ветвления типа AND (И); ROr - множество правил ветвления типа OR (ИЛИ); RXor - множество правил ветвления типа XOR (исключающее ИЛИ).
Модель GERT-сети. GERT-сети являются вариантом полумарковских моделей, но случайные величины в них характеризуется не только дисперсией, но и законом распределения. При использовании GERT-сетей, как правило, определяют значения переменных, связанных с первыми моментами распределения выходной величины относительно начала координат (математическое ожидание, дисперсию, коэффициенты асимметрии и эксцесса).
Математическая модель GERT-сети может быть описана направленным взвешенным графом G
С=«,Е],
где V = Ц, •••> - множество вершин (узлов); А - количество узлов; £■= 4. •••> ес -множество
направленных ребер (дуг); с - количество дуг; Кя - множество источников (начальная вершина графа), такое, что КзеУ; Бгс - множество стоков (конечная вершина графа), такое, что Зге е V
Связность узлов и дуг GERT-сети определим при помощи двух матриц инцидентности. Определим
tjE __
/ц - с х И - матрицу инцидентности дуг с узлами, соответственно - инцидентность дуги ег с
у
E
узлом V.-. Матрица ^ = /£ - Ихс определяет инцидентность узлов с дугами, соответственно
E
J . --^ у JJJ
инцидентность узла vj с дугой ei
Узлы GERT-сети интерпретируются как состояния системы, а дуги как переходы из одного состояния в другое. Такие переходы связываются с выполнением обобщенных операций, характеризуемых плотностью распределения и вероятностью выполнения.
Направленное ребро (дуга) ассоциируется с тем, из какого узла / оно выходит и в какой узел j входит, и обозначается как дуга <i,j >. Дуга <i,j > в рамках GERT-сетей рассматривается как «работа на дуге» и имеет вес некоторого аддитивного параметра (например, время выполнения работы). Для GERT-сети весом дуги <i,j> является вектор [ру, Fy ], где Ру - условная вероятность выполнения дуги
< i, j> при условии активации узла i, а Fy - условная функция распределения времени выполнения дуги <7,7 >, при условии, что < /, 7 > выполняется. При этом дуга </, 7 >, для которой Fy- О, называется «холостой» дугой или дугой, на которой работа не выполняется.
Следует отметить, что параметр F j может соответствовать не только времени (используется в данной работе) выполнения дуги, но и любой аддитивной величине, характеризующей выполнение процесса -например, стоимости, расходу материальных ресурсов и т.п. Кроме того, речь может идти о векторе аддитивных параметров.
Каждый узел сети имеет входную и выходную функции активации. Входная функция определяет условие, при котором узел может быть активирован. Выходная функция определяет совокупность условий, связанных с результатом активизации узла.
Виды входных функций: AND-функция - узел активируется, если выполнены все дуги, входящие в него; IOR-функция - узел активируется, если выполнена любая дуга или несколько дуг, входящих в него; EOR-функция - узел активируется, если выполнена любая дуга, входящая в него, при условии, что в данный момент времени может выполняться только одна дуга, входящая в данный узел.
Виды выходных функций: детерминированная функция (DT) - все дуги, выходящие из узла, выполняются, если узел активирован; стохастическая функция (ST) - только одна дуга, выходящая из узла, выпол-
няется с заданной вероятностью, если узел активирован.
<Э < Kl D [>
а - функция б - IOR в - EOR
г - детерминирован- д - стохастический ный выход выход
Рис. 2. Входные и выходные функции узлов GERT-сети Комбинируя все входные и выходные функции, получаем шесть различных типов узлов:
Рис. 3. Типы узлов GERT-сети
Узел с входной АШ-функцией и стохастической выходной функцией называется STEOR-узел. Активация узла означает, что система перешла в некоторое состояние и определяет множество дальнейших работ (операций). Одна или несколько работ (операций) начинают свое выполнение сразу после активации узла, являющегося их началом. Активация узла происходит, если его входная функция выполнена. После выполнения выходной функции активированного узла он становится неактивным.
Результаты функционирования графа О могут быть представлены в виде набора параметров выполняемой сети: вероятность активации стока сети, функция распределения стока и др.
Таким образом, вЕРТ-сеть - это сеть с источниками Ря и стоками 8гс вида «работа на дуге», в которой каждый узел принадлежит одному из шести типов узлов, для каждой дуги < /,7 > определен вес вида
[ру,FІJ] с вышеуказанным значением и задано начальное распределение источников сети.
Алгоритм трансляции. При первоначальной формулировке алгоритма трансляции авторы столкнулись с очевидным противоречием графических нотаций ЕРС и GERT. Противоречие заключается в том, что в еЕРС модели активным элементом, обозначающим действие, является процесс (узел), а в GERT - дуга. Чтобы преодолеть это противоречие, было решено сопоставлять с процессом еЕРС не одиночную дугу
GERT-сети, а сочетание «узел+ребро». На уровне описаний бизнес-процессов это соответствовало связке «процесс+событие». Для целей исследования числовых параметров бизнес-процесса можно говорить, например, о том, что время выполнения дуги GERT-сети сопоставляется с временем наступления финального события процесса.
При таком подходе для трансляции модели бизнес-процесса из нотации ARIS eEPC в соответствующую GERT-сеть необходимо выполнить следующие действия.
Сопоставим каждому символу модели еЕРС вершину (узел) GERT-сети. Для каждого элемента еЕРС модели st создается соответствующий ему узел GERT-сети vit таким образом, q = h. На данном этапе каждый узел GERT-сети имеет EOR-функцию на входе и стохастическую функцию на выходе, тем самым мы сохраняем условие, что в каждый символ (объекты: событие, функция) модели еЕРС входит только одна связь и только одна связь с ptj = 1 выходит из объекта.
После выполнения этого сопоставления первоначальный вариант матрицы инцидентности GERT-сети может быть задан простым приравниванием матриц Fq = F^ и Fq =Fq .
Для Vsj,sj и существует п связей 1и п> 1, для которых =1, определим (возьмем) соответствующий ему узел Vj и сопоставим Vv^ входную функцию по следующим принципам (табл. 1).
Таблица 1
Преобразование операторов на слияние
Оператор eEPC Узел GERT-сети
Sj є RAnd Vj с входной AND-функцией
Sj є ROr Vj с входной IOR-функцией
Sj є RXor Vj с входной EOR-функцией
Для правил из RAnd, ROr, RXor соответствующие узлы Vj имеют стохастическую функцию выхода.
Для Vsj,Sj ui?o и существует п связей 1п п> 1, для которых /f =1, определим (возьмем) соответствующий ему узел Vj и сопоставим Vv^ выходную функцию по следующим принципам (табл. 2).
Таблица 2
Преобразование операторов на разветвление
Оператор eEPC Узел GERT-сети
Sj є RAnd Vj с детерминированной выходной функцией DT
Sj є ROr Нет прямого решения в аппарате GERT, предлагаемое авторами решение будет рассмотрено в другой статье
Sj є RXor Vj со стохастической выходной функцией ST
Для правил из RAnd, ROr, RXor соответствующие узлы Vj имеют EOR-функцию входа.
Определим вероятность выполнения дуг GERT-сети. Для V/;, для которой /? = 1, возьмем соответствующую ей дугу et єЕ и определим вектор [Pji,Fjj] в соответствующей позиции fjt =1 матрицы Fq . Для каждого определенного вектора [pj,, Fj, ] приравняем значение вероятности p^ к атрибуту ph соответствующей дуги eEPC модели. Таким образом, каждый вектор [pj,, Fj, ] в позиции fj матрицы Fj описывает параметры GERT-сети, взятые из матрицы Fq .
Определим функции распределения для дуг СЕРТ-сети. Для VSj,Sj <еВ0(В0 е£0) возьмем атрибут . Согласно [5], вероятностное поведение системы бизнес-процессов адекватно описывает бета-распределение. Так как является средним значением времени выполнения функции , то примем данное значение за математическое ожидание функции распределения времени выполнения дуги, выходящей из узла GERT-сети, соответствующего объекту «функция» модели eEPC.
Возьмем определенный на предыдущем этапе вектор [р^] в позиции матрицы ^. Для
каждого вектора, где V/-, :5/ е50, определим ^ как функцию, описывающую бета-распределение с математическим ожиданием, равным . Для каждого вектора, где соответствующий Sj из ^ не принадлежит В0, функция = 0, то есть дуга ег является «холостой».
Таким образом, получены матрицы Е0е и ^, полностью отображающие GERT-сеть, соответствующую бизнес-процессу, описанному моделью ARIS eEPC.
Пример трансляции бизнес-процесса в GERT-сеть. Рассмотрим пример по трансляции бизнес-процесса «Изготовление детали» (рис. 4) в GERT-сеть.
Рис. 4. Модель бизнес-процесса
В соответствии с алгоритмом трансляции выполним первичные преобразования моделей, данные преобразования приведены в таблице 3.
Таблица 3
Преобразования объектов моделей
Объект eEPC модели Тип объекта eEPC модели Узел GERT-сети Тип узла GERT-сети
S1 Событие VI ЭТЕОР
S2 Событие У2 ЭТЕОР
S3 Процесс V3 ЭТЕОР
S4 Событие V4 ЭТЕОР
S5 Перекресток V5 ЭТЕОР
S6 Перекресток V6 ЭТЕОР
S7 Перекресток V7 [ЕОР, ОТ]
S8 Процесс V8 ЭТЕОР
S9 Процесс V9 ЭТЕОР
Э10 Событие V10 ЭТЕОР
Э11 Перекресток VII ГДЫР, ЭТ]
Б12 Перекресток V12 ЭТЕОР
813 Событие V13 ЭТЕОР
Э14 Процесс V14 ЭТЕОР
815 Событие V15 ЭТЕОР
Для того чтобы воспроизвести первоначальную топологию GERT-сети, соответствующей транслируемой еЕРС модели, приравняем матрицы инцидентности и ^ =^05.
VI vs
Рис. 5. GERT-сеть
Таким образом, получена сеть (рис. 5), структура которой соответствует eEPC модели исходного бизнес-процесса. Для полной трансляции модели необходимо определить производящие функции на дугах GERT-сети в соответствии с числовыми параметрами исходного бизнес-процесса. Для этого выполним сопоставление, представленное в таблице 4, сопоставим параметры дуг GERT-сети с параметрами процесса модели еЕРС.
Таблица 4
Параметры GERT-сети
Определяемый параметр GERT-сети fV Вероятность Pj дуги <i,j> Функция распределения Fy на дуге <Uj>
fe-3 1 F3-4
f8-9 1 F8-11
^9-10 1 F9-11
fl4-16 1 F13-14
fl2-14 0,95 -
fl2-12 0,05 -
Заключение. Таким образом, предложен алгоритм, позволяющий однозначно конвертировать матричную форму описания модели бизнес-процессов в формате ARIS eEPC в матричную форму описания GERT-сети.
Полученная GERT-сеть позволяет исследовать и анализировать вероятностное поведение бизнес-процессов и получать их вероятностные характеристики: математическое ожидание и дисперсию времени выполнения.
Литература
1. Аалст Вил ван дер, Хей Кейс ван. Управление потоками работ: модели, методы и системы. - М.: Физматлит, 2007.
2. Доррер М.Г. Алгоритм преобразования моделей бизнес-процессов в одноцветные сети Петри // Моделирование и анализ информационных систем. - 2010. - № 2.
3. ТахаХемдиА. Введение в исследование операций. - М.: Вильямс, 2005.
4. Филлипс Д., Гарсиа-Диас А. Методы анализа сетей. - М.: Мир,1984.
5. Голенко-Гинзбург Д.И. Стохастические сетевые модели планирования и управления разработками. -
Воронеж: Научная книга, 2010.
6. Pritsker A.A.B. GERT: graphical evaluation and review technique. - RAND Corporation, 1966.