Все о системах управления бизнес-процессами
 
Почитать
Поговорить
Побродить
Завершить


 
Подборка мнений на тему simulation

Simulation, или по-русски «имитационное моделирование»,– это возможность «проиграть» выполнение бизнес-процесса на модели. Вы задаете распределение входных параметров, жмете кнопку «пуск» и получаете распределение выходных параметров по результатам, предположим, 10 тысяч запусков процесса. Например, в случае процесса выдачи кредита банком входными параметрами может быть вероятностное распределение суммы запрашиваемого кредита, среднее и среднеквадратичное отклонение времени регистрации заявки кредитным менеджером и т.п. А интересующие выходные параметры – это, как правило, либо время выполнения процесса, либо его стоимость, вычисляемая исходя из стоимостей ресурсов – например, стоимости рабочего часа того же кредитного менеджера.

Если вы подумали, что это старый добрый метод «Монте-Карло», то вы совершенно правы, несмотря на то, что этот термин в литературе по BPM не встречается. Понятно, что это метод может быть полезен при проектировании нового или ревизии существующего процесса: например, с его помощью можно заранее просчитать последствия того или другого усовершенствования и выбрать из них оптимальный. Типичная задача такого рода: есть финансовый контролер, специалист с относительно высокой зарплатой, проверяющий авансовые отчеты. Вопрос: какую экономию мы получим, если введем в процесс второго исполнителя с более низкой квалификацией и зарплатой, и будем направлять ему авансовые отчеты на сумму меньше 1000 рублей?

Более изощренные реализации имитационного моделирования позволяют подавать на вход фактически наблюдаемые распределения (так называемый round-trip optimization). То есть, в примере выше не строить догадки о том, какова в среднем доля авансовых отчетов на сумму меньше 1000 рублей, а воспользоваться данными завершившихся экземпляров этого бизнес-процесса, уже накопленными BPMS.

Еще одна «продвинутая» функциональность – возможность запустить на исполнение одновременно несколько процессов по разным шаблонам. Так, в нашем примере финансовый контролер участвует не только в рассматриваемом процессе. Поэтому для того, чтобы получить корректную оценку времени прохождения процесса, необходимо учитывать конкуренцию процессов за разделяемый ресурс, каковым в данном случае является финансовый контролер.

Недавно в блогах произошел интенсивный обмен мнениями по поводу реальной пользы от имитационного моделирования.

  1. Джим Синур из Gartner в заметках «Optimizing Costs? Try Simulation» и «Extra, Extra: Simulation is Bi-Optimal» развенчивает представление о том, что имитационное моделирование – это нечто сложное, требующее большого объема тестовых данных на входе и полезное только при проектировании бизнес-процесса с нуля. Он отмечает, что современные инструменты не требуют глубоких познаний в математике, позволяют подавать на вход накопленные исторические данные и могут эффективно использоваться не только при первоначальной разработке, но и для выбора наилучшего варианта оптимизации процесса в дальнейшем. С его точки зрения, имеющийся сегодня потенциал средств имитационного моделирования недооценен пользователями.
  2. В принципе, ему и по должности положено быть оптимистом. Но в заметке «The Hype about Simulation and Optimization» ему оппонирует Рашид Хан, бывший глава Ultimus, а ныне независимый консультант, регулярно выступающий с критических позиций. Он считает оптимизм поводу возможностей имитационного моделирования чрезмерным, отмечая, что для качественного моделирования требуется большой объем исходных данных, которые не так-то легко собрать. Причем если эти данные не будут достаточно точными, то не стоит многого ожидать и от результатов моделирования – «garbage in, garbage out». Имитационное моделирование не подскажет вам путей возможного усовершенствования, то есть помимо владения инструментом вы должны быть сильны как бизнес-аналитик. И вам таки понадобятся знания в области математической статистики. В комментариях к этой заметки отметились несколько авторитетных специалистов.
  3. Кейт Свенсон из Fujitsu в заметке «Model Strategy & Simulation» повторяет уже высказанные аргументы о сложности подготовки входных данных. К ним он добавляет соображение о том, что доверять результатам имитационного моделирования в BPMS, построенных на трансляции моделей (распространенный сегодня вариант – трансляция из BPMN в BPEL) можно в меньшей степени, чем системам, в которых BPMN исполняется непосредственно (по чистому совпадению, BPMS от Fujitsu относится именно к этому второму типу).
  4. И наконец, заметка Брюса Силвера «Making Simulation Useful». Он считает, что имитационное моделирование – это одна из тех фальшивок («fake feature»), которые вендоры вставляют в свои продукты только чтобы получить галочку в сравнительном обзоре Gartner, но которые не приносят никакой реальной пользы. Он говорит об этом с сожалением, потому что потенциально моделирование дает возможность оценить эффект затеваемых усовершенствований прежде, чем тратить свои ресурсы на их осуществление. Далее он подробно останавливается на основной методологической проблеме, которая этом препятствует (Рашид Хан ее тоже упоминает). А именно: мы не в состоянии разделить время, в течение которого задача была назначена исполнителю («total time»), на время, непосредственно затраченное им на выполнение задачи («active time») и время, в течение которого задача ожидала своего рассмотрения («wait time» или «lag time»). К сожалению, инструментарий имитационного моделирования зачастую не делает различия между total time и active time, и это в значительной мере обесценивает получаемые ими результаты. Плюс к этому в существующих пакетах возникают проблемы с моделированием межпроцессных событий (message flow в BPMN), с учетом корреляцией между значениями различных параметров (предполагать, что параметры независимы – это явно чрезмерное упрощение) и другие. Всего Брюс насчитывает семь критериев оценки качества имитационного моделирования, а лучшие из известных ему систем удовлетворяют всего трем. Впрочем, некоторые комментаторы к его заметке указывают, что инструментарий, удовлетворяющий всем критериям, все же можно найти.

Общий вывод, который можно сделать из этой дискуссии: если в вашей BPMS есть средства имитационного моделирования, то они заслуживают как минимум того, чтобы обратить на них внимание. Возможно, они не абсолютно точно просчитают эффект задуманных усовершенствований процесса, но в конце концов, в большинстве случаев это и не требуется – достаточно всего лишь сравнить альтернативы, чтобы выбрать лучшие. Возможно, с этой задачей ваш инструментарий справится вполне успешно.

=АБ

Комментарии
#1 Кирилл Курышев, 22.05.2009 01:19

Добрый день. Хотел бы поблагодарить за подборку мнений по поводу имитационного моделирования в BPM системе и обратить Ваше внимание на нескольких фактах, которые приковывают мое внимание в этой области.
Во-первых, я полностью согласен с мнением, что имитационное моделирование есть необходимый инструмент анализа существующего БП с целью его дальнейшей рационализации. И возможно именно этот инструмент и является главным оплотом деятельности аналитика, участвующего в разработке БП в среде BPMS. Однако есть моменты, недоступные для имитационного моделирования, по крайней мере в тех системах BPM с которыми нам удалось столкнуться. Дело в том, что Им. моделирование весьма формализованный инструмент анализа, что формирует его главные достоинства и недостатки. Главным его недостатком я считаю тот факт, что ИМ. моделирование не "умеет" работать с информационным потоком, который, как известно сопровождает любой БП. Таким образом, не удается моделировать некоторые частные ситуации, возникающие в БП (или моделировать их только на основе вероятностей). Кроме того, как вывод, для им. моделирования нет разности работы с автоматическими и интерактивными функциями, которые входят в состав модели БП. В качестве примера можно привести тот факт, что очередь выполнения интерактивных активностей смоделировать можно, а вот поточность обработки автоматических функций смоделировать весьма сложно.
Во-вторых, я не совсем понимаю работу имитационного моделирования с сетью взаимосвязанных процессов. Как смоделировать работу нескольких асинхронных процессов? И возможно ли это?

#2 Анатолий Белайчук, 22.05.2009 13:18

Кирилл

С имитационным моделированием просматриваются две проблемы. Во, первых, как Вы правильно замечаете, есть вещи которые он делать не способен. То же взаимодействие асинхронных процессов - без него ведь сквозных процессов практически не бывает. Это значит, что удел имитационного моделирования - субоптимизация. Типичный пример: на определенном шаге процесса сидит финансовый контролер, давайте его разгрузим, дав в помощь менее квалифицированного клерка, чтобы тот рассматривал вопросы ценой ниже определенного уровня. Сколько мы на этом выиграем или проиграем?

Но, как нас учат основоположники, субоптимизация есть грех, потому что ей легко увлечься и тем самым упустить из виду вопросы стратегические, т.е. уровня как раз того сквозного процесса, в котором, как мы выяснили, имитационное моделирование является слабым помощником.

Во-вторых, чтобы дело дошло до оптимизации на том уровне, который может обеспечить имитационное моделирование, нужно сначала очень и очень хорошо поработать. Те процессы, с которыми мне лично приходится иметь дело на практике, запущены до такой степени, что в них невооруженным взглядом видно что надо менять, причем менять срочно.

Это же относится и к BAM: да, в теории звучит очень красиво, но на практике в процессах на уровне здравого смысла, без всякой математики, обнаруживается столько несообразностей... Я встречал в литературе мнение, что в первый год проекта BPM достаточно качественного мониторинга - опять-таки, невооруженным взглядом видно что надо улучшить в процессе. И только через год, когда явные несообразности устранены, становятся востребованы количественные методы. То есть смысл использования и simulation, и BAM появляется после того, как процессы достигли определенной зрелости. (Впрочем, существует и противоположное мнение - что BPM надо начинать с BAM, еще даже до того, как смоделирован первый процесс.)

#3 Кирилл Курышев, 22.05.2009 18:37

Согласен скорее с вторым утверждением, что начинать надо с BAM и ИМ. моделирования, для только что сформированного процесса. Так как только сравнение KPI (получаемых из BAM) и получение "тестовых" KPI в ходе им. моделирования на разных этапах развития БП (цикл PDCA) позволяет реально, в динамике оценить "что было" и "что стало". Более того, метрики процесса для его анализа не должны меняться во времени, так как эта та точка основы, с помощью которой можно анализировать эффективность процесса.
По поводу взаимодействия разных процессов я думал и пришел к выводу, что концепция объектного проектирования позволяет нам рассматривать не интересующие нас процессы как "черные ящики" с некой долей вероятности показателей оценки данных процессов. Однако, разумеется, это далеко от жизни.

Главная | О проекте | Введение | Софт | Литература | Форум | Семинары | Ссылки | Архив новостей | Подписка на RSS-каналы | Карта сайта | Авторские права