Калянов Г.Н.
Институт проблем управления РАН, д.т.н., профессор, E-mail: [email protected]
ФОРМАЛЬНЫЕ МЕТОДЫ ТЕОРИИ БИЗНЕС-ПРОЦЕССОВ
КЛЮЧЕВЫЕ СЛОВА
Процесс, бизнес-процесс, модель, инжиниринг/реинжиниринг, верификация, требования по автоматизации.
АННОТАЦИЯ
Рассматриваются основные направления современной теории бизнес-процессов. По каждому из направлений приводится краткий обзор его основных моделей и методов.
Введение
Теория бизнес-процессов является одним из направлений теории процессов, в свою очередь, представляющей собой "раздел математической теории программирования, изучающий математические модели поведения динамических систем, называемых процессами" [1]. В [1] процесс определяется как "модель поведения, которое заключается в исполнении действий". Модели теории процессов хорошо подходят для изучения иерархических систем, включая организационные системы, их процессы и принято называть бизнес-процессами (БП).
Фактически в теории процессов процесс представлен диаграммой переходов состояний (state transition diagram — STD), включающей такие объекты как состояние, начальное состояние, переход, действие (но не включающей условия перехода между состояниями). Отличия от классической STD заключаются в наличие множества переменных процесса, начального условия процесса, использования операторов вместо действий (оператор — "схема действия, приобретающая вид конкретного действия лишь при конкретном выполнении этого оператора"). Теория обеспечивает формальное описание (а также анализ и верификацию) процессов с передачей сообщений, основанное на исчислении взаимодействующих систем Р.Милнера [2].
В качестве источников и предшественников теории процессов в [1] указываются следующие направления:
1. Теория взаимодействующих последовательных процессов Хоара [3, 4], в которой исследуется модель взаимодействия синхронных параллельных процессов, основанная на передаче сообщений.
2. Исчисление взаимодействующих систем Милнера [2], в котором введена денотационная семантика параллельных процессов, потоковый граф с синхронизированными портами, при этом использована модель взаимодействия параллельных процессов Хоара.
3. Алгебра взаимодействующих процессов [5] — теория первого порядка с равенством, в которой предметные переменные принимают значения в множестве процессов, используются формальные символы, соответствующие операциям над процессами.
4. Мобильные процессы (описывающие поведение распределенных систем, во время функционирования которых могут меняться связи между компонентами и структура самих компонентов), теория сетей Петри, теория частичных порядков, темпоральная логика, метрический подход (в котором исследуется понятие расстояния между процессами), синхронно и асинхронно взаимодействующие автоматы и др.
Основные направления теории бизнес-процессов
Формальный аппарат, лежащий в основе теории БП, базируется на следующих направлениях теории программирования:
• формальные грамматики и языки;
• параллельные процессы и методы распараллеливания;
• теория тестирования;
• методы оптимизации, верификации, анализа и оценки качества;
• теория баз данных и баз знаний;
• структурные методы анализа и проектирования.
• В докладе рассматриваются следующие разделы теории БП:
• типы и классы БП,
• модели БП (типы, виды, нотации),
• технологии моделирования,
• методы структурирования/декомпозиции,
• методы инжиниринга/реинжиниринга,
• методы анализа и верификации,
• методы перехода от моделей БП к требованиям по автоматизации БП. Типы и классы БП
Имеется ряд классификаций БП (на основе их группирования по функциональному принципу, по назначению и т.д.), наиболее часто используемые из них приведены в [6, 7]. Однако, роль подобных классификаций сводится лишь к помощи при структурировании бизнес-модели (фактически, на их основе строятся различные методики структурирования).
В [8] выделен специальный класс БП — "конвейерные" процессы, который существенно шире множества «классических» конвейеров, и позволяет при этом вычислять основные характеристики процесса (в том числе и те, которые нельзя вычислить с помощью имитационного моделирования). Модель конвейерного процесса имеет следующие основные отличия от классической модели конвейера:
1. Процесс описывается не параллельно-последовательной схемой, а ациклическим ориентированным графом, вершинами которого могут быть функциональные операции или спусковые функции.
2. Числовые характеристики процесса определяются не аналитическими, а рекуррентными выражениями.
Разработана теория моделирования конвейерных бизнес-процессов, включающая в себя следующие основные компоненты:
1. Набор функциональных примитивов, позволяющих описывать конвейерные БП.
2. Формальное математическое описание модели в виде набора рекуррентных отношений, позволяющих однозначно описать основные характеристики процесса.
3. Набор характеристик, определяющий функционирование конвейера: производительность, время начала стационарного режима работы и т.п.
4. Структурный метод анализа модели, позволяющий в статике (без имитационного моделирования) вычислять основные характеристики процесса: производительность; время выхода в стационарный режим работы; характеристическую операцию конвейера, определяющую производительность конвейера.
5. Теорема, доказывающая, что на любом цикле работы конвейера его фаза изменяется по закону некоторого индуцированного им линейного конвейера.
Модели БП
Данный раздел теории БП опирается на структурный подход к моделированию БП. Концептуальная модель соответствующего структурного языка приведена в [6], она включает четыре базовых компонента — словарь языка, синтаксис языка, комплект абстрактных семантических правил/процедур, аспекты языковой прагматики.
Имеется три вида базовых моделей БП — функциональная, информационная, поведенческая (все три могут включать элементы оргструктурной модели). По типам модели БП разделяются на статические и динамические, по степени формализации — на слабо-формализованные и формальные.
В качестве формальной модели БП в работе [9] предложен смешанный граф. Нижний уровень модели содержит информационные объекты (ИО), представляемые с помощью кортежей Di (ai1, ai2,..., ain), где Di — идентификатор i-го ИО, ai — j-ый атрибут i-го ИО. Бизнес-операция моделируется парой Ti Dj =(Ti, Dj), где Ti — тип операции с ИО. При этом Ti Dj =(Ti j T аД..., Ti a/5), однако для ряда операций (например, операции редактирования) могут существовать такие индексы m, что Ti j = j , т.е. операция может применяться не ко всем атрибутам ИО. Бизнес-функция моделируется кортежом бизнес-операций Im ((Tim, Dii),..., (Tkm, Dki)), где Im — код должности исполнителя, Tim,...,Tkm — элементы множества {Ti}, Dii,...,Dki — элементы множества {Dj}. При этом, не нарушая общности, можно считать, что внутри бизнес-функции бизнес-операции имеют естественный порядок исполнения.
Формальная модель бизнес-процесса представляет собой граф управления бизнес-функциями G (N, По, Пф, E, M, EM, EN, R, ER), где
• N -множество узлов, каждый из которых соответствует бизнес-функции;
• nO и пф — входной и завершающий узел, соответственно;
• E — множество управляющих ребер такое, что i, jeNU( nO, пф}: (i, j)eE, если возможна ситуация, когда за выполнением бизнес-функции i будет выполняться бизнес-функция j;
• M — множество узлов, соответствующих структурным подразделениям предприятия (MnN=Q где Q— пустое множество);
• EM — множество ребер подчиненности такое, что i, jeM: (i, j)eEM, если структурное подразделение j подчинено структурному подразделению i;
• EN — множество ребер исполнения бизнес-функции такое, что ieM, jeN: (i, j) e EN, если бизнес-функция j может быть выполнена в подразделении i;
• R — множество ресурсов предприятия;
• ER — множество взвешенных ребер использования ресурсов такое, что ieR, jeN: (i, j)eER, если бизнес-функция j использует при своем выполнении ресурс i.
Технологии моделирования
Современные технологии моделирования БП базируются на следующих основных принципах:
• Интеграция моделей различных видов, например, DFD-технология [10, 11] (интегрирующая диаграммы DFD, CFD, ERD, STD и спецификации процессов в различных нотациях), схема Захмана [12] и развивающая ее модель '^-предприятие" [13], онтологическая модель Бунге-Ванда-Вебера [14] и др.
•"Трансляция" статических моделей в динамические (прежде всего, в сети Петри [15, 16]), в качестве примеров коммерческих реализаций можно привести продукты Design/IDEF-Design/CPN, реализующие переход от IDEF0 к сети Петри, а также продукты CPN-AMI и INCOME , реализующие переход от DFD к сети Петри.
•"Трансляция" моделей простейших видов в более "развитые", в частности, переход от IDEF0 или DFD к смешанному графу [9].
Среди формализованных технологий построения "правильной" модели следует отметить метод нормализации ERD c использованием нормальных форм Кодда [17], заключающейся в преобразовании схемы к наиболее простой 3НФ. Отметим, что на практике схемы 1НФ и 2НФ имеют тенденцию возникать при попытке описать несколько реальных сущностей в одной схеме (заказ и книга, проект и сотрудник). 3НФ является наиболее простым способом представления данных, отражающим здравый смысл. Построив 3НФ, мы фактически выделяем базовые сущности предметной области.
Методы структурирования/декомпозиции Базовые принципы структурирования приведены в [6, 7].
В предложенном в [18] подходе процесс декомпозиции определяется как случайный процесс, доказывается возможность интерпретации процесса декомпозиции БП моделью ветвящегося процесса Гальтона-Ватсона [19], строится соответствующая вероятностная модель процесса декомпозиции, оценивается ожидаемое количество элементов функциональной модели БП, время проектирования сценариев (вариантов) БП, трудоемкость проектирования, глубина декомпозиции и т.п.
В [20] предложен метод построения модели БП, в котором в качестве необходимого условия разбиения сквозного БП на цепочку взаимодействующих подпроцессов рассматривается смена объекта управления процесса, а в качестве достаточного условия выступает перегруппировка потоков управления, доказано соответствие критериям "правильной" декомпозиции модели бизнес-процесса, разработанным на основе анализа онтологической модели Бунге-Ванда-Вебера.
В [9] введены метрики оценки качества декомпозиции, базирующиеся на общих свойствах "хорошей" системы — сцепление (механизм взаимодействия между компонентами БП) и связность (механизм внутренней структурной организации компоненты), предложено и ранжировано множество типов сцепления и связности (при этом статистические данные показывают, что более 70% реальных БП соответствуют введенным типам), разработан метод оценки качества, обеспечивающий для любого БП определение типа его сцепления и связности, а также проектирование БП с заданным типом сцепления и связности.
С практической позиции существенную помощь при структурировании БП обеспечивает комплекс методов разработки регламентов и методик БП, предложенный в [21, 22]. Методы инжиниринга/реинжиниринга
В [23] предложен подход к инжинирингу предприятий на основе применения интеллектуальных технологий. Представлена эволюция этого направления в аспектах реинжиниринга и управления БП с использованием динамических интеллектуальных систем, имитационного моделирования и систем управления знаниями. Показана интеграционная парадигма инжиниринга предприятий, использующая методы стратегического инжиниринга на основе когнитивного и интеллектуального анализа данных, развития сервисно-ориентированных архитектур предприятий с использованием многоагентных технологий и онтологического инжиниринга предприятий.
В [9] предлагается формализованная методология инжиниринга/реинжиниринга, интегрирующим ядром которой является вышеприведенная графовая модель БП. Центральное место в методологии занимает метод проектирования сценариев БП на основе аппарата формальных грамматик БП [24], позволяющий, с одной стороны, расширить число анализируемых сценариев выполнения бизнес-процесса вплоть до их полного перебора, с другой стороны, автоматически отсечь большую часть сценариев, неприемлемых по ряду объективных и субъективных критериев. Соответствующая грамматика является параллельной атрибутной порождающей грамматикой БП и представляет собой следующую упорядоченную девятку объектов: G = (УЫ, УТ, V0, Р, А^ Ms, Ап, Мп, С), где
VI — множество терминальных символов;
Уы — множество нетерминальных символов;
Уо ^Уы — множество начальных символов;
Р — множество порождающих правил;
А5 — конечное множество синтезируемых атрибутов;
М5 — множество методов синтеза атрибутов;
Ап — конечное множество наследуемых атрибутов;
Мп — множество методов наследования атрибутов;
С — множество символов, определяющих параллелизм.
В настоящее время в рамках данного раздела теории БП ведутся работы по формализации свойств "хороших" (согласно [25]) процессов, таких как горизонтальное и вертикальное уплотнение, версионность и т.д.
Методы анализа и верификации
Данный раздел включает методы тестирования БП, методы статического анализа потоков данных, методы динамического анализа на базе сетей Петри, методы функционально-стоимостного анализа и методы оценки качества БП на базе метрик качества программного обеспечения.
В рамках метода тестирования [9, 26] предложена модель потоков данных БП, основанная на отношениях определения и использования информационных объектов при различных масках (определяющих, например, права доступа к данным). Предложенный метод тестирования позволяет:
• обеспечить обнаружение специфических для бизнес-процессов ошибок в потоках данных, связанных с их обработкой под различными масками, обеспечивающими регламенты доступа, не обнаруживаемых другими известными методами тестирования;
• обеспечить выявление всех тех ошибок, обнаружение которых может производится с помощью традиционных критериев, основанных на анализе графовых моделей объектов. Метод статического анализа [27] обеспечивает автоматическое обнаружение ошибок в
"статической семантике" БП.
Динамический анализ на базе сетей Петри [28] является наиболее развитым направлением в данном разделе теории БП. На практике обычно применяются сложные и развитые сети Петри. Модификации, как правило, касаются следующих трех моментов:
• введение иерархии (иерархические сети Петри);
• определение различий в маркерах, каждый из которых имеет свои уникальные характеристики (цветные/раскрашенные сети Петри);
• введение многоместных (содержащих несколько маркеров) позиций, как последовательных, так и параллельных (сети Петри с многоместными позициями).
Из исследований в данном направлении необходимо отметить работы [15, 29], позволяющие решать ряд дополнительных задач помимо решения традиционных задач в рамках классической теории сетей Петри (достижимость и т.д.).
Методы функционально-стоимостного анализа подробно описаны в [30].
Методы оценки качества БП на базе метрик качества программного обеспечения разработаны магистрантами МФТИ в рамках подготовки магистерских диссертаций. Их идея заключается в формировании комплексного метода оценки на основе объемных и топологических метрик (таких как меры Холстеда [31], цикломатическая мера сложности Мак-Кейба [32], узловая мера [33], меры Хенри-Кафуры [34] и др.) и процедур экспертного оценивания.
Методы перехода от моделей БП к требованиям по автоматизации БП Одним из первых методов перехода от моделей БП к требованиям по их автоматизации являлся метод перехода от функциональной модели БП в виде иерархии DFD-диаграмм к структурным картам (моделям этапа проектирования системы автоматизации БП), предложенный в [35]. При этом исследования по оценке качества построенных моделей не проводились.
В [36] предложен метод формирования и анализа требований к системе автоматизации, основанный на модификации вышеприведенного графа БП. При этом исследование модели требований (редуцированного графа) и ее последующая оценка происходит по следующим направлениям: расчет метрик сцепления и связанности, оценка соответствия модели БП, оценка по ряду критериев качества моделирования.
Литература
1. Миронов А.М. Теория процессов // Переславль-Залесский: Университет г.Переславля, 2008.
2. R.Milner. A Calculus of Communicating Systems // Number 92 in Lecture Notice in Computer Science. Springer Verlag, 1980.
3. C.A.R. Hoare. Communicating Sequential Processes // CACM, 1978, 21(8), p.666-677.
4. C.A.R. Hoare. Communicating Sequential Processes // Prentice Hall, 1985.
5. J.A.Bergstra, J.W. Process Algebra for Synchronous Communication // Information and Control, 1984, 60(1/3), p.109-137.
6. Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов // М.: Финансы и статистика, 2006.
7. Калянов Г.Н. Консалтинг: от бизнес-стратегии к корпоративной информационно-управляющей системе // М.: Горячая линия — Телеком, 2011.
8. Куприянов Б.В. Моделирование конвейерных бизнес-процессов // Сборник трудов «Управление большими системами»/ М.: 2010, вып. 28, с.230-273.
9. Калянов Г.Н. Теория и практика реорганизации бизнес-процессов // М.: СИНТЕГ, 2000.
10. Gane C. Computer Aided Software Engineering: the Methodologies. N.J.: Prentice Hall, 1990.
11. Hatley D., Pirbhai I. Integrated Structured Analysis and Design. N.Y.: Dorset House, 1987.
12. Zachman J. A. A Framework for Information Systems Architecture // IBM Syst. J., 1987, vol. 26, №3, р. 276-292.
13. Зиндер Е.З. «3D-предприятие» — модель трансформирующейся системы // Директор ИС, 2000, № 4.
14. Wand Y., Weber R., An Ontological Model of an Information System // IEEE Transactions on Software Engineering, 1990, Vol. 16, № 11, p. 1282-1292.
15. Юдицкий С.А. Сценарный подход к моделированию поведения бизнес-систем // М.: СИНТЕГ, 2001.
16. Юдицкий С.А., Владиславлев П.Н. Основы предпроектного анализа организационных систем // М.: СИНТЕГ, 2005.
17. Дейт К. Дж. Введение в системы баз данных // М.: Вильямс, 2006.
18. Циперман Г.Н. Стохастическая модель процесса идентификации сервисов информационной системы // Труды ИСП РАН, 2014, т.26, вып.5, с.7-28.
19. Ватутин В.А. Ветвящиеся процессы и их применение // М.: МИАН, 2008.
20. Фёдоров И.Г. Методология создания исполняемой модели и системы управления бизнес-процессами // М.: МЭСИ, 2015.
21. Репин В.В., Елиферов В.Г. Процессный подход к управлению: моделирование бизнес-процессов // М.: РИА "Стандарты и качество" 2004.
22. Елиферов В.Г., Репин В.В. Бизнес-процессы: регламенты и методики // М.: ИНФРА-М, 2005.
23. Тельнов Ю.Ф. Реинжиниринг бизнес-процессов: компонентная методология // М.: Финансы и статистика, 2004.
24. Калянов Г.Н. Формальные методы поддержки реорганизации бизнес-процессов // Экономика, статистика и информатика, 2013, №3, с.161-165.
25. Хаммер М., Чампи Д. Реинжиниринг корпорации: манифест революции в бизнесе // СПб.: С.-Петербургский ун-тет, 1997.
26. Калянов Г.Н. Тестирование информационных потоков // Труды 13-й Российской научно-практической конференции "Реинжиниринг бизнес-процессов на основе современных информационных технологий. Системы управления процессами и знаниями". М.: 2010, с.146-151
27. Калянов Г.Н. Формальные методы инжиниринга и верификации бизнес-процессов // Труды 16-й научно-практической конференции "Инжиниринг предприятий и управление знаниями". М.: 2013, с.144-149
28. Питерсон Д. Теория сетей Петри и моделирование систем // М.: Мир, 1984.
29. Mendling J., Reijers H., Van der Aalst W. Seven Process Modeling Guidelines // Information and Software Technology, 2010, Vol. 52, № 2, p. 127-136.
30. Ивлев В.А., Попова Т.В. АВС/АВМ/АВВ — методы и системы // М.: ООО "1С-Паблишинг", 2004.
31. Холстед М.Х. Начала науки о программах // М.: Финансы и статистика, 1981.
32. McCabe T.J. A Complexity Measure // IEEE Transactions on Software Engineering, 1976, Vol. SE-2, № 4, p. 308-320.
33. Woodword M.R. and etc. A Measure of Control Flow Complexity in Program Text // IEEE Transactions on Software Engineering, 1979, Vol. SE-5, № 1, p. 45-50.
34. Henry S., Kafura D. Software Structure Metrics Based on Information Flow // IEEE Transactions on Software Engineering, 1981, Vol. SE-7, № 5, p. 510-518.
35. Гейн К., Сарсон Т. Системный структурный анализ: средства и методы // М.: Эйтекс, 1992.
36. Калянов Г.Н. Системный анализ требований к КИС // Труды 15-й Российской научно-практической конференции "Реинжиниринг бизнес-процессов на основе современных информационных технологий. Системы управления знаниями". М.: 2012, с.96-98.