Моделирование бизнеса. Основные подходы

Я уже писал о моделировании при помощи IDEF0 (Знакомство с нотацией IDEF0 и пример использования), об организации работы склада и работе с клиентами от лида до сделки (Внедрение CRM. От регистрации лида до закрытия сделки. Кейс и пояснения), о системе Bizagi (Bizagi. Описание. Пример). И везде я использовал при пояснении примеров и практических решений нотации бизнес-процессов.
С одной стороны, применение схем для наглядности при описании моделей бизнеса в ни у кого не вызывает вопросов. Это действительно очень удобно. С другой стороны, многие бизнесмены и даже мои коллеги недоумевают, зачем нужны специальные нотации и правила для разработки бизнес-процессов, ведь можно в любом графическом редакторе (visio) или при помощи других удобных инструментов просто нарисовать интуитивно понятную схему.
О том, почему так важна стандартизация, а также о том, в каком случае применяется тот или иной подход, я и хочу поговорить.
Основные подходы

Функциональное моделирование
Функциональное моделирование рассматривает бизнес как функцию (лат. functio — совершение, исполнение) или иными словами «черный ящик». В функциональной модели функция не имеет временной последовательности, а только точку входа и точку выхода. Функциональное моделирование помогает рассматривать бизнес-модель с с точки зрения результативности, т.е. при моделировании мы исходим из того, что имеем на входе, и того, что желаем получить на выходе.
Например, компания разрабатывает какую-то CRM-систему для своего бизнеса. В случае применения функционального подхода к моделированию уже сама выбранная среда для работы подсказывает, с чего начинать. Точка входа – «входящий интерес клиента или лид», точка выхода – желаемый результат: «покупка и получение лояльного клиента», «получение постоянного клиента», «получение максимум информации о потенциальном клиенте» и т.д.
Таким образом, в функциональной модели изначально известны точка входа и желаемый результат, а последовательность действий и является объектом разработки. При этом использование функциональных моделей как «черных ящиков» позволяет детализировать каждый этап по мере необходимости. А вся работа при моделировании направлена на поиск оптимального решения для достижения цели.
Функциональные модели вы можете также использовать для демонстрации своих идей и вариантов решений. Это также очень удобно, ведь в процессе демонстрации вы можете двигаться от общего к деталя, по мере необходимости разделять и декомпозировать функции. Но декомпозировать вы будете при этом именно функции, и, разделяя одну функцию на несколько, вы не получите описание процесса.
Некоторые путают описание процесса и функциональную модель. Например, в системе Business Studio функцию называют процессом, хоть это и не совсем верно. Все же описание функций и процессный подход – несколько разные вещи. И я лично считаю, что функциональное моделирование оптимально реализовано в нотации IDEFO. Сам я для такого варианта работы использую именно ее, и всем также рекомендую.
Правила работы с IDEFO вы можете подробнее изучить, прочитав мою статью накомство с нотацией IDEF0 и пример использования.
Процессное моделирование (моделирование бизнес процессов)
О процессном моделировании я буду рассказывать с точки зрения нотации BPMN, как одного из наиболее распространенных стандартов процессного моделирования. При этом я полностью согласен, что существует множество языков моделирования и различных систем. И каждый может пользоваться тем, что ему удобнее. Но все же BPMN — это уже сложившийся стандарт процессного моделирования, а потому его я и беру за основу в описании.
Процесс с точки зрения бизнес-модели — это последовательность каких-то событий и действий, которые имеют начало и конец.
В этом кроется основное отличие процессного моделирования от функционального. Функциональное моделирование рассматривает бизнес-модель с точки зрения входа и выхода (имеющихся ресурсов и желаемого результата). А процессное основано на последовательности действий в определенных границах, в случае BPMN это будут начало и конец события.
Все процессы могут разбиваться (детализироваться) на подпроцессы вплоть до детализации на уровне задач, т.е. действий, дальнейшая детализация которых невозможна. Процесс – это некая последовательность действий, которую необходимо выполнить, чтобы получить определенный результат. Необходимо отметить что в модели бизнеса как процесса результат может и не быть явным в отличии от функциональной модели.
Принципиальное отличие процессного моделирования от функционального заключается в том, что при процессном моделировании основное внимание уделяется не тому, что мы хотим получить, а тому, что нужно сделать для получения результата, т.е. не итогам той или иной деятельности, а самой последовательности действий.
Например, в BPWIN или Business Studio в процессе детализации каждой функции происходит переход от функционального подхода к процессному. Т.е. в общем, мы рассматриваем модель с точки зрения – возможностей и желаемого результата, а когда переходим к решениям для каждой функции, здесь уже практикуется явно процессный подход, т.е. пошаговый алгоритм действий для достижения результата.
Представьте себе что в функциональной модели есть «черный ящик» — функция «Принять заказ». А при декомпозировании мы уже рассматриваем ее не как функцию, а как процесс, и последовательность действий при приеме заказа – это уже процессный подход.
Есть и еще одно очень важное отличие. Функциональную модель невозможно использовать при реализации какой-то либо системы, только для проектирования. А процессный подход позволяет создавать исполняемые модели, т.е. описания последовательности действий, которые мы можем в дальнейшем перевести в какую-то среду для создания системы совместной работы предприятия, основанной на процессном подходе.
Ментальный подход (ментальные карты)
При создании ментальных моделей специалист подходит к моделированию не как к процессу или набору функций, а как к некому набору связанных между собой понятий. Для наглядности я приведу пример — ментальная карта понятия “Процедура снабжения” (см. рисунок).
Такой вариант подхода применяется, прежде всего, для себя. Рисование схемы в свободной форме помогает структурировать свои знания, так сказать, “разложить по полочкам” в свободной форме полученную информацию. Также подобные ментальные карты помогают найти решение, которое уже позже, по мере необходимости, будет воплощаться в рамках строгих правил процессного или функционального подхода.
Можно применять ментальные карты и для демонстрации клиентам: и существующей ситуации, и вариантов решения поставленной задачи. Ментальные карты помогут наглядно продемонстрировать, какие методы могут быть использованы, показать в наглядной форме различные идеи.
Плюсы применения таких ментальных карт очевидны:
В результате для понимания модели и заложенных в ней идей требуется присутствие и комментарии ее разработчика (аналитика).
Конечно, существуют очень простые карты, которые интуитивно читаются и без дополнительных комментариев. Но при отсутствии стандартов всегда есть вероятность, что даже в этом случае автор что-то другое имел в виду или где-то недостаточно детализировал свою схему. Т.е. существует вероятность разного прочтения. А бизнес — это не философия. При всей умозрительности и разнообразии подходов к описанию бизнес-процессов, здесь очень важны однозначные решения.
Методология и языки бизнес-моделирования
Очень часто даже в профессиональной литературе возникает путаница, когда люди смешивают понятия методологии анализа работы бизнеса и описания языков бизнес-моделирования.
Методология — это система принципов и стандартов описания бизнес моделей и их последующего анализа. В то время как язык бизнес-моделирования – это не более чем инструмент для разработки моделей бизнеса.
Здесь напрашивается сравнение с программированием вообще и применением конкретного языка программирования. Программирование включает в себя и построение алгоритма, и выбор подходящего языка программирования, и реализацию алгоритма программы в рамках того или иного языка. А, например, программирование на языке Си++ – это уже заведомо ограничение определенными рамками, так как средствами определенного языка можно решить только четко ограниченный круг задач, и, одновременно, даже если задачу можно решить средствами Си++ совсем не обязательно, что именно этот язык будет в конкретном случае оптимальным. В общем, разницу между понятием «программирование» и «программированием в рамках определенного языка», я думаю, большинство понимают даже без таких пояснений.
Отличие языков разработки бизнес-моделей в от языков проектирования систем
Существует целое семейство языков проектирования систем, которые внешне схожи с языками бизнес-моделирования, например, это Ares Studios, целое семейство языков UML и другие, которые используются для проектирования IT-систем.
Основное различие этих языков от языков разработки бизнес-процессов лежит в их предназначении. Если языки проектирования IT-систем рассматривают бизнес-процессы с точки зрения возможности их автоматизации, воплощении в IT-системах, то языки бизнес-моделирования рассматривают последовательность действий именно с точки зрения бизнеса, включая работу как IT-систем, так и сотрудников, движения товаров и т.д.
Соответственно, в языках проектирования систем нет элементов, которые помогут полноценно описать действия подразделений, сотрудников, взаимодействие между ними, работу с поставщиками, общение с клиентами и так далее. Инструменты этой группы языков помогут именно автоматизировать процессы бизнеса, которые поддаются автоматизации. А все остальное будет оставлено «за кадром», например, как некие «функции» без расшифровки.
В то же время языки разработки бизнес-процессов охватывают максимально именно работу бизнеса как такового, а вот те или иные нюансы автоматизации и алгоритмизации систем в них описать далеко не всегда возможно с достаточной степенью детализации.
Преимущества разработки моделей бизнеса
И все же, зачем применять языки бизнес-моделирования, которые налагают строгие ограничения, требуют придерживаться жестко заданных правил при моделировании? Ведь всегда можно «нарисовать схему» в графическом редакторе или даже на бумаге, используя ментальный подход, при этом изучение языков моделирования вообще не потребуется.
На самом деле, стандарты и правила – это огромный плюс:
Применение моделей бизнеса на практике
Лично я считаю, что бизнес-моделирование стоит применять при решении любых задач, связанных с выявлением проблем и «узких мест», с оптимизацией и модернизацией бизнеса и т.д. Как бизнес-консультант я практически всегда строю модели работы компании или ее подразделений при работе со своими клиентами. Это дает четкое понимание всех этапов работы и позволяет избежать «белых пятен» в этом вопросе.
Кроме того, наглядные схемы бизнес-моделей помогают мне в процессе взаимодействия с клиентами. Проекты у меня часто бывают сложными, и обычного текста или устной речи бывает недостаточно для понимания, в то время как использование наглядных бизнес-моделей снижает затраты времени клиента на чтение и понимание моих предложений, и практически исключает проблемы взаимопонимания в этом вопросе. И если несколько лет назад я еще сталкивался с недоумением со стороны клиентов, то сейчас вариант описания «на словах» без наглядных и удобных схем практикуется крайне редко.
А в случае автоматизации какого-либо этапа работы или создания автоматизированной системы управления бизнесом на основе проектно-ориентированного подхода качественная бизнес-модель, выполненная в том или ином языке моделирования, станет готовым руководством для технических специалистов.
Удобство, универсальность, простота восприятия – это те причины, по которым от словесных описаний в бизнес-сфере все больше переходят к бизнес-моделированию. А применение готовых языков позволяет работать с моделями быстро, избегать ошибок, и также без проблем вносить любые изменения.
Также в настоящее время я готовлю к публикации книгу и онлайн курс, в которой подробно опишу собственное видение процессного подхода к бизнесу, а также мой собственный практический опыт работы в сфере функционального и процессного моделирования. Все желающие могут подписаться на уведомление о выходе новой книги по и другие новости ссылке.
Моделирование бизнес-процессов, автоматический перевод «диаграмма-текст» и CH-1 нотация
По роду своей деятельности мне довольно приходилось довольно много моделировать бизнес-процессы различных организаций. Как уже работающих компаний (с целью систематизации и оптимизации существующей деятельности), так и новых, т.е. старт-апов (проектирование деятельности «с нуля»). В этой заметке я попробую кратко обобщить цели такого моделирования (раздел I), основные виды моделей (раздел II), рассказать о своих инструментальных наработках (раздел III), а также порассуждать о том, чего тут еще не хватает, в т.ч. и с точки зрения курса на импортозамещение (раздел IV).
(I) Что это и Зачем все это нужно
Действительно, первый и естественный вопрос – а что это такое и зачем вообще это нужно на предприятии? Пойдем и мы каноническим путем и начнем прямо с начала (Ваш К.О.). Итак:
(1) Бизнес-процессы предприятия – это просто совокупность всех его внутренних процессов, т.е., аллегорически, это – «физиология предприятия» (в то время как организационная структура – это его «анатомия»). Чтобы чем-то управлять – нужно, как минимум, знать, как оно работает.
Важно понимать, что любой бизнес-процесс (т.е. деловой процесс) – это просто некоторая технология работы, которая или уже фактически существует в организации, или же предполагается к осуществлению (проектируется), но никак не какой-то документ или «листик с квадратиками и стрелочками». Нет, любой процесс – это технология, порядок выполнения каких-либо действий, необходимых для бизнеса (для организации). Более того, не будем забывать, что в идеале такой порядок работы должен определяться внутренними документами на официальном языке – стандартами организации (СТО). А сами графические схемы являются удобным средством проектирования нового порядка работы / визуализации уже существующего (и их можно оформлять в качестве информационно-справочного приложения к СТО).
(2) Наличие актуальной и подробной процессной модели работы (в виде комплекта актуальных СТО и/ или иерархического набора графических диаграмм) уже работающего предприятия значительно упрощает:
(5) Использование графических диаграмм процессов облегчает обучение новых сотрудников и их адаптацию, а также позволяет уйти от излишней зависимости от «ноу-хау» отдельных сотрудников («Если он уйдет – как же во всем этом разобраться»?),
(6) Наличие формализованных описаний внутренних процессов является важной вехой на пути внедрения информационных систем и средств автоматизации деятельности.
Примечание. Здесь важно не путать первичное и вторичное. Да, компьютерная программа может работать только по четкому алгоритму. Но не нужно забывать, что «Автоматизация для бизнеса, а не бизнес для автоматизации», и что множество бизнес-процессов предприятия всегда больше (уж точно не меньше) области автоматизации. Итак, сначала ноты (технология) – потом инструмент (автоматизация), но не наоборот.
(7) Региональная экспансия: «записав» в модель/ систему внутренних стандартов технологию работы успешного предприятия, можно затем ее тиражировать на другие, вновь открываемые, или создать франшизу.
(II) Модели процессов: виды
(II.1) С точки зрения актуальности содержания модели делятся на:
(1) Модель «Как есть» (англ. «AS IS»): отражает РЕАЛЬНОЕ положение дел на момент описания, фактически имеющуюся, сложившуюся технологию работы.
(2) Модель «Как должно быть» (англ. «TO BE»): отражает целевое состояние, которое в дальнейшем предполагается претворить в жизнь. Например, модель работы вновь открываемого предприятия, или же новый (совсем новый или улучшенный старый) порядок выполнения каких-либо работ.
(2) Модель «Как должно бы быть» (англ. «SHOULD BE»): отражает «идеализированное» положение дел (согласно регламентирующим документам), тогда как фактическая схема работ в реальности может быть несколько иной. На практике необходимость в построении таких моделей встречается нечасто.
Отметим, что приведенные модели одного и того же процесса могут различаться весьма значительно. Пример: модель регулируемого пешеходного перехода, светофор переключается автоматически через определенный промежуток времени.
«Как есть»: Некоторые пешеходы ждут зеленого и переходят только на зеленый. А некоторые – не ждут зеленого сигнала, они смотрят по сторонам и перебегают дорогу, если, по их мнению, опасность попасть в ДТП им не грозит. Так делать не стоит, но в реальности, к сожалению, случается.
«Как должно бы быть» (ибо так написано в ПДД): Все пешеходы ждут зеленого и переходят только на зеленый.
В данном случае, модель «Как должно бы быть» могла бы совпасть с «Как должно быть». Однако они могут не совпасть, если в качестве модели «Как должно быть», т.е. той, которая будет признана целевой, будет одна из следующих:
«Как должно быть»: «Светофор с кнопкой». Пешеходы подходят к переходу и нажимают на кнопку – через определенный промежуток времени загорается зеленый.
«Как должно быть»: Пешеходный переход запрещен.
«Как должно быть»: Пешеходный переход станет надземным или подземным.
«Как должно быть»: Улица станет пешеходной.
(II.1) С точки зрения метода моделирования и, соответственно, области применения результата рассмотрим следующие виды моделей:
(1) Функциональные модели.
(2) Модели потоков работ (worklow-модели).
Функциональные модели представляют собой «принципиальную схему работы». Т.е. что рожь сначала сеять, потом жать, потом молотить. Или что сначала изготовить детали, потом собрать изделие, потом – выходной контроль качества. И т.д.
Сегодня, пожалуй, одной из самых популярных методологий функционального моделирования является IDEF0. По сути, эта методология является де-факто «мировым стандартом», признанным как за рубежом, так и в РФ (см., напр. Р 50.1.028-2001. методология функционального моделирования). Описание методологии IDEF0 легко найти, в т.ч. и в Сети.
Моделирование предприятия часто рекомендуют начинать с формирования функциональной модели. Однако нужно помнить, что такие модели являются «статичными», они не предназначены для, например, описания пошаговой реализацию какой-либо рабочей процедуры. А предназначены они для отображения общей картины, принципиальной схемы работы. Что до детальных пошаговых моделей осуществления какой-либо деятельности, то для этого предназначены модели потоков работ (worklow-модели). И о них – ниже.
Модели потоков работ (worklow-модели) позволяют описать процесс как упорядоченную последовательность выполнения различных действий, возникающих событий, а также объектов, участвующих в реализации данного процесса. Именно такие модели нужно строить, когда Вы хотите описать/ спроектировать конкретный процесс на своем предприятии, например, «Порядок приема товара на склад», «Правила подачи заявки на перевозку», и др.
Модели потоков работ могут формироваться как на очередном шаге построения функциональной модели – при ее дальнейшей детализации, – так и самостоятельно, когда есть необходимость описать (спроектировать) какую-либо отдельную процедуру. На практике второй путь тоже используется нередко, когда работа начинается с «болевых точек» предприятия, или же вообще идет методом «от реестра процессов предприятия».
Что до выбора конкретной нотации worklow-моделирования (т.е. собственно графического языка), то тут, в отличие от функционального моделирования, выбор довольно большой. Это и IDEF3, и «плавательные дорожки», и средства ARIS, и методология BPMN, и другие. И каждой из этих методологий есть свои плюсы.
Что до меня, то я пользуюсь нотацией «собственного изготовления» – CH-1 нотацией. Скажу честно, когда я только начинал заниматься выстраиванием бизнес-процессов, у меня и в мыслях не было сочинять какой-то там язык. Но: начав с одного из стандартных средств, в реальной работе оказалось (повторюсь, именно в моем случае), что средств используемого языка недостаточно для краткой и полной записи «со слов», причем без потери данных, другой оказался для сотрудников слишком сложен…. И вот так, вводя дополнительные символы и некоторые изменения, не думая – не гадая, в середине «двухтысячных» и появилась CH-1. Пара слов о ней ниже.
(III) Пара слов о CH-1 нотации
Итак, нотаций workflow-моделирования существует множество. И это нужно рассматривать как плюс: принцип «пусть расцветают сто цветов» тут как нельзя более кстати. Выбор нотации моделирования зависит от задачи (а задачи бывают очень разные). Например, для моделирования производственных линий используются совсем другие, не упомянутые здесь методы моделирования. Так что такой «методический плюрализм» в моделировании потоков работ не случаен.
Если мы говорим о CH-1 нотации, то она изначально предназначена для описания процессов в виде последовательности действий с указанием их исполнителей, связанных событий, значимых параметров выполняемых действий и/ или процесса в целом (например, нормативная длительность) и возникающих потоков: материальных и информационных. Русскоязычная версия ее спецификации (с примерами) выложена здесь: https://drive.google.com/open?id=0B_wUAIgOErG8MTQzYzJhNGUtZGY1NC00OTE1LWFlMzgtMDEyZmFjYTFjMDk3, подробнее см. также здесь https://ch1-notation.blogspot.com (персональная страница про CH-1).
Если же говорить о софте, то используемые в данной (как, впрочем, и в любой другой) нотации символы можно найти почти в любом ПО, имеющем встроенные библиотеки графических примитивов. Причем как в коммерческом ПО, так и в ПО, распространяемом бесплатно. Кроме того, на сегодняшний день в ряде программных продуктов существуют специальные библиотеки символов CH-1.
При этом, если используемый программный продукт поддерживает механизм гиперссылок (что встречается довольно часто), то с их помощью полезно:
(IV) В мечтах о будущем: автоматическая генерация регламентов (машинный перевод «диаграмма-текст»)
Диаграмма (схема) бизнес-процесса – это, по сути, его (прото)регламент в графическом виде. Ну, или (прото)стандарт организации, если выражаться более официально. Вся информация о том, «кто, куда, чего и как» должна там наличествовать. А, соответственно, встает вопрос: «Нельзя ли сформировать текст по диаграмме нажатием одной кнопки»? Причем задачу можно усложнить: регламент (стандарт) должен быть на «человеческом» языке, а не в стиле «отчет» из серии набора заголовков: «Кто?» «Что?» «Когда?» и т.п. и автоматически копируемого в соответствующие разделы несклоняемого текста.
Если говорить о CH-1 диаграммах, то для них был разработан алгоритм их машинного перевода на «человеческий язык» в форму готового проекта стандарта. Алгоритм – на сей день не оттестированный (ввиду нереализованности в коде) – размещен здесь: https://drive.google.com/open?id=0B_wUAIgOErG8bTluc2xYSVI4NXc, см. также здесь: https://ch1-notation.blogspot.com (персональная страница про CH-1). С реализацией этого в коде одному мне не справиться не удалось. При этом оптимальным видится двуступенчатый вариант, когда мы имеем экспорт из графического редактора в, например, xml, а затем генерацию текста в текстовом редакторе уже из xml. Подобная организация является открытой в том смысле, что последовательно к ней можно «подрубать» все новые и новые графические и текстовые редакторы. Также она должна обеспечивать конфиденциальность данных, и, с этой точки зрения, вариант ПО с открытым исходным кодом является выигрышным.
И в заключении – о чем? – об импортозамещении. Совершенно очевидно, что, как минимум, для стратегических предприятий, госорганов и других организаций, для которых важна информационная безопасность, доверять даже «отрисовку» своих процессов импортному ПО с закрытым исходным кодом может быть неприемлемым. Действительно, процессная модель предприятия, охватывающая его внутренние процессы, – что в графическом (иерархический набор диаграмм), что в текстовом (в виде стандартов организации) виде, – содержит почти всю информацию о его внутреннем устройстве – «бери и строй», как говорится. Поэтому создание подобного полностью отечественного программного продукта (как синтез «рисовалки» (редактор диаграмм, графический векторный редактор) и «текстогенератора») приобретает особую актуальность.



