В крупных компаниях фиксируют верхнеуровневые процессы в картах процессов верхнего уровня. Наиболее наглядно это делается с помощью схем бизнес-процессов. На них же обозначают участников и владельцев процессов. Более сжатое представление дает матрица RACI. Встает вопрос, как автоматически строить матрацу по данным схемы процессов верхнего уровня.


Введение

Карта процессов верхнего уровня (КПВУ) - это схематичное изображение деятельности (деятельность = процесс) компании, процессный “скелет” компании. Это один из ключевых элементов BPM (Business Process Management). Полистав альбом КПВУ можно в целом понять, что и как компания делает, какие подразделения в каких процессах участвуют.

Обычно отрисовку верхнеуровневых схем выполняют в нотации VAD (value added chain diagram).

Выжимку из КПВУ можно представить в виде половинчатой матрицы RACI, в которой заполняются только владелец бизнес-процесса и его участники:

  • Accountable (сокращение A) – подотчетный, утверждающий. Это видимо владелец процесса, а он должен быть одним (иначе будет по Райкину: "рукава и пуговицы"). Хотя часто в RACI под Accountable понимается что-то иное, судя по указанию нескольких "А" для одного процесса (задачи). Подробнее о Владельцах процессов (process owner) можно почитать тут: Process Roles — Who are the Process Owners? https://www.brcommunity.com/articles.php?id=b668

  • Responsible (сокращение R) – ответственный непосредственно за выполнение работы, исполнитель бизнес-процесса (executors)

  • Consulted (C) – консультант и Informed (I) – роль, которой нужно направить уведомляемые о выполнении процесса - обе эти роли не рассматриваем.

Матрица RACI (матрица ответственности ролей в бизнес-процессах) предназначена для четкого распределения обязанностей и зон ответственности среди участников бизнес-процессов.

На всякий случай шаблон RACI в Excel

Странно. Так как ключевая роль у владельца процесса (A), то непонятно почему такую матрицу не назвали ARCI?

Задача

Нарисовать КПВУ и далее автоматически по ней построить матрицу RACI (половинчатую). Иметь возможность для анализа приведенных данных (поиск, фильтры, группировка), т.е. поместить названия процессов и роли (и связи между ними) в аналитическую табличку (Excel, google table и т.п.) или базу данных. Когда в компании полсотни подразделений и сотня верхнеуровневых процессов, то подобный инструмент становится очень актуальным.

Пожелания к инструментам: free & open source и наличие развертывания на корпоративном сервере.

1. Карта процессов верхнего уровня

Можно верхнеуровневые процессы рисовать в Visio и его BPM-развитиях, начиная с Бизнес-студии. Но желателен free & open source. Это позволит создать единый стандарт \ подход к подобным вещам. Связка Visio-Excel-VBA позволяет решить поставленную задачу, включая связку VAD с RACI, но она не перспективна.

Возьмем drawio, он же diagram.net. В примере показан первый уровень верхнеуровневых процессов. В нем, как правило, нет "цепочки добавленного качества (стоимости)", поэтому можно было бы заменить VAD-кораблики на прямоугольники. Посмотреть примеры процессов верхнего уровня можно вбив в поисковик фразу "процессы верхнего уровня", категория "картинки".

Карты верхнеуровневых процессов:

Ссылка на пример Карты верхнеуровневых процессов в drawio

При вводе данных по каждому процессу мы используем заполнители (placeholders), как показано на рисунке:

Формочка для заполнения заполнителей такая:

2. Обработка в Google Sheets

Google Sheets - это не Open Source, но для демонстрации хороший инструмент. Я храню схемы процессов в xml, поэтому и экспортировать ничего не нужно. Если что, в drawio есть кнопка экспорта в xml.

Пара возникших проблем.

Вначале пробовал парсить через функцию IMPORTXML(). Не вышло. Другие файлы парсит, но на этот выдает "Н/Д Не удалось обработать данные в формате XML". Даже для простых XPath-запросов типа "/", "//". Почему? Второй проблемой оказалось получить прямую ссылку с google drive. Для IMPORTXML нужна прямя ссылка, но разные: https://drive.google.com/uc?export=download&confirm=no_antivirus&id=[your_XML_file_id] не помогло. Поэтому использовал DropBox c заменой окончания исходной ссылки "? dl = 0" на "? dl = 1".

В итоге бросил упражнения с IMPORTXML.

Для разбора xml использовал незатейливый скрипт.

В xml данные placeholders хранятся так:

<object label … Process="В2. Клиентский маркетинг. Корпорат" Owner="фронт2" Executors="фронт2, фронт1" …>

Пробегаемся по файлу, находим нужные имена placeholders и выводим их значения в промежуточную табличку (функции slice, indexOf):

Так как используются placeholders, то мы можем использовать в схеме любые графические примитивы: VAD-кораблики, прямоугольники, кружки.

Далее из вспомогательной таблички строим саму матрицу (полу-RACI):

Алгоритм такой: вручную расставляем в первой строке названия подразделений. Иначе ни как, хотя бы потому, что слева обычно указываются все front-подразделения, потом middle, далее back office и все обеспечивающие.  Компу сложно рассказать про это.

Далее пробегаемся по вспомогательной табличке и сравниваем поля "Владелец" и "Исполнитель" с шапкой итоговой матрицы RACI (половинчатой). Если имеется равенство по Владельцу, то пишем "А" (Accountable),  если по Исполнителю, то "R" (Responsible).

Кроме того, все данные у нас теперь в таблице и по ней можно проводить разнообразную аналитику: Сколько участников в конкретном процессе, иерархию подразделений по числу статусов "Владелец процесса" и "Исполнитель процесса".

Заключение

Показанный пример упрощен для более легкого восприятия, в крупной компании такие карты верхнего уровня - это "пухлые" альбомы схем процессов, поэтому при изменении схем проводится достаточно большая работа по корректировке RACI. Любое изменение орг-штатной структуры компании или перераспределение (добавление, изъятие) функционала требует корректировки, как схем, так и матрицы. Данные подход позволяет строить матрицу автоматически по данным верхнеуровневых схем. Если есть готовые подобные инструменты - просьба сообщить.

Перспектива

Drawio \ diagram.net - достаточно удобная система, кроме того, это free + Open Source + облако + On-Premise, поэтому вследствие прочих равных функциональных характеристик имеет преимущества между схожими системами, включая, LucidChart.

Если с Drawio интегрировать базу данных или хотя бы Excel (наподобие связки с Excel в Visio), то получится уже "половина" ARIS. Интеграция позволит двухстороннюю связь между схемой и объектом в БД. Например, достаточно синхронизировать вышерассмотренные заполнители (placeholders) с одноименными объектами в БД. Есть такие решения?

ARIS-подобное на Open Source - когда то должно же появиться. Пока нет ни одной Open Source \ Free системы класса BPM-BPA. Хочется верить, что светлое (свободное) будущее BPM когда-нибудь, да наступит...

Комментарии (4)


  1. kracko23
    26.10.2021 17:53

    Привет! Сам столкнулся с +- такой ситуацией и необходимостью использовать drawio . Нет ощущения, что это уже не best practice для 2021 и +- крупных компаниях?


    1. bipiem Автор
      26.10.2021 20:12

      Какие могут быть альтернативы для приведенного выше примера?

      В любом случае - drawio перспективней visio. А на visio многие уходят разочаровавшись в АРИСе.


      1. rarnec
        27.10.2021 12:04

        Sparx?


        1. bipiem Автор
          27.10.2021 12:31

          В Sparx Systems и Visual Paradigm заявлен механизм генерации RACI по схеме БП. Но они не Free-OpenSource.

          Поэтому если смотреть на EA-инструменты, то это скорее Archi. Но как в нем прикрутить механизм генерации RACI не разбирался.

          Немного про отрисовку схем БП в Archi обсудили в комментариях к прошлой статье:

          https://habr.com/ru/post/546762/#comment_22801354

          Хорошие BPM — инструменты, которых нет и нет. Моделирование процессов