Основные сведения о механизме бизнес-процессов
Бизнес-процессы в «1С:Предприятии» нужны для того, чтобы объединять отдельные операции (выписка счета, прием наличной оплаты, отпуск товара со склада и т. д.) в цепочки взаимосвязанных действий, приводящих к достижению конкретной цели (например, продажа товара за наличный расчет). Участие сотрудников в жизненном цикле бизнес-процесса достигается ролевой маршрутизацией.
МБП обеспечивается сразу несколькими объектами конфигурирования: бизнес-процессы, задачи, регистр сведений и параметр сессии. Как правило, типы реквизитов адресации задачи и измерений регистра сведений назначаются ссылками на соответствующие справочники, поэтому к четырем вышеперечисленным видам добавляются еще справочники.
Основные объекты МБП — это бизнес-процессы и задачи. Они используют друг друга и еще три вспомогательных объекта — параметр сеанса, регистр сведений и справочники. Вспомогательные объекты не используют ни друг друга, ни основные объекты.
Задача предназначена для учета заданий и описывает способ их распределения по исполнителям с учетом организационной структуры предприятия. Адресация заданий сотрудникам определяется реквизитами, в которых можно предусмотреть многомерную ролевую маршрутизацию, например по ролям, рабочим группам, подразделениям, помещениям, филиалам и т. д. При этом задачи могут создаваться не только бизнес-процессами, но и другими объектами информационной базы и непосредственно пользователями. Более того, в общем случае исполнителем задания может быть не только сотрудник, но и любая внешняя система, например другая учетная система.
Понятие задачи фактически определяет лишь интерфейс взаимодействия бизнес-процесса с заданием, выполнение которого может быть, в общем случае, не связано с выполнением операций в самой системе. Например, бизнес-процесс по ходу своего выполнения может потребовать согласования какого-то вопроса с руководителем фирмы. Сформулированная таким образом задача будет, к примеру, адресована секретарю, который станет решать ее любыми доступными ему способами: по электронной почте, по телефону и т. д. Задача будет считаться выполненной, когда в систему поступят сведения о получении нужного согласования.
Объект «Бизнес-процесс» описывает логику выполнения операций для достижения той или иной цели и управляет жизненным циклом созданных бизнес-процессов (их экземпляров) от момента старта до момента завершения. Логика бизнес-процесса (взаимосвязь и последовательность обхода точек маршрута, условные переходы и пр.) наглядно описывается в виде карты маршрута, которая позволяет визуально описывать маршрут бизнес-процесса в виде связного графа и позволяет легко описывать алгоритмы условных переходов и реакцию бизнес-процесса на различные события.
Операции, выполняемые в ходе бизнес-процесса, представлены на карте маршрута точками действий, которые содержат информацию о том, кто и что должен сделать на данном этапе. Исполнитель может определяться персонально (Иванов) или с учетом ролевой маршрутизации («Кладовщик», «Руководитель отдела продаж»). При переходе бизнес-процесса на точку действия он автоматически формирует задачи, устанавливая в них предусмотренные реквизиты адресации. После того как исполнитель отметит задачу как выполненную, бизнес-процесс автоматически переходит к следующей точке маршрута в соответствии с картой.
В точке действия возможно также назначение групповых и коллективных задач. В первом случае действие должны выполнить все члены группы, — например, когда всем менеджерам нужно предоставить ежемесячный отчет. Во втором — действие должен выполнить только один из членов группы (например, завизировать документ у одного из старших менеджеров). В точке действия можно описать проверку необходимых условий выполнения задачи, интерактивный диалог с пользователем при переходе далее по маршруту и указать, например, какие документы следует открывать при активации задач, связанных с этой точкой маршрута бизнес-процесса.
МБП допускает несколько видов маршрутизации.
• Жесткая. Бизнес-процесс имеет карту, не содержащую условных и параллельных переходов с жестко определенными адресатами для каждой точки маршрута. Отклонение таких бизнес-процессов не допускается.
• Свободная. Адресаты точки карты маршрута бизнес-процесса не установлены и определяются программно или интерактивно в течение жизненного цикла бизнес-процесса.
• Условная. Карта маршрута предусматривает проверку условий и переход по соответствующим ветвям. Переходы могут быть как бинарными (условие), так и множественными (выбор варианта)
• Параллельная. Карта маршрута предусматривает разделение бизнес-процесса на параллельные ветви с возможностью последующего слияния (ожидания). Продвижение бизнес-процесса по каждой из параллельных ветвей происходит независимо, по мере выполнения соответствующих задач.
Как правило, в реальных картах бизнес-процессов встречаются все эти типы маршрутизации.
Ключевое понятие в механизме бизнес-процесса и задачах в «1С:Предприятии» — система адресации, которая обеспечивает возможность не только персональной, но и ролевой адресации задач участникам бизнес-процессов.
Ролевая маршрутизация позволяет назначать задания не только конкретным исполнителям, но и ролям, группам, подразделениям и т. д., как это определено в прикладном решении. Она построена на взаимодействии объектов «задача» и «регистр сведений». Первый определяет состав реквизитов адресации (роли, подразделения и т. д.), а второй отражает актуальную, т. е. соответствующую текущему моменту, информацию о принадлежности сотрудников ролям, подразделениям, рабочим группам и т. д.
Регистр сведений можно использовать для реализации механизмов замещения или учета отсутствия сотрудников. Например, если в нем указано, что роль главного бухгалтера исполняет Иванов и Иванов уходит в отпуск, а его обязанности передаются Петрову, то запись в регистре сведений меняется так, чтобы роль главного бухгалтера исполнял Петров. По возвращении Иванова из отпуска соответствующая информация восстанавливается.
Подводя итог сказанному, можно констатировать, что механизм бизнес-процессов состоит из следующих основных компонентов:
- многомерная система адресации задач исполнителям (роли, отделы, организации, группы и т. д.),
- визуальное проектирование карты бизнес-процесса,
- генерация задач по исполнителям,
- ролевая маршрутизация,
- переход по точкам маршрута в соответствии с картой бизнес-процесса.
Общая же логика выполнения бизнес-процессов выглядит примерно так:
- бизнес-процессы формируют задачи, устанавливая нужные значения в их реквизитах адресации (роли, группы, отделы);
- конечные исполнители определяются с помощью «матрицы разыменования», которая, например, устанавливает соответствие пользователей ролям.
Разработка и исполнение
В принципе программирование бизнес-процессов в «1С:Предприятии» можно было делать и ранее, но только на уровне языка программирования. Новый механизм автоматизирует эту процедуру, предлагая визуальные средства проектирования и возможность настройки программы с помощью методов параметризации и сводя к минимуму (или вовсе исключая) ручное написание программного кода. Все это теперь реализовано на уровне платформы, которая содержит объекты метаданных и механизмы, обеспечивающие единообразную реализацию бизнес-процессов в прикладных решениях.
В статье мы часто используем термин «бизнес-процесс», хотя порой под ним понимаются разные вещи. С одной стороны, это обобщенное описание последовательности действий при выполнении каких-то деловых задач (например, продажа товара). В данном случае такое описание реализуется в виде некоторой программы (только представленной не в кодах, а в виде карты-маршрута), которую можно условно назвать частным бизнес-решением. С другой стороны, бизнес-процесс — это выполнение конкретных действий в соответствии с этим описанием (при обслуживании конкретного покупателя), т. е. выполнение написанной ранее программы.
Согласно терминологии «1С», в первом случае мы будем использовать термин «бизнес-процесс» (БП), во втором — «экземпляр бизнес-процесса» (ЭБП). БП создают разработчики, а пользователи выполняют свои действия с помощью ЭБП. Разработка БП ведется в «Конфигураторе», исполнение ЭПБ — в среде прикладных решений («1С:Предприятие»).
«Конфигуратор» системы «1С:Предприятие» предоставляет широкие возможности по формированию бизнес-процессов, логика которых задается с помощью маршрутных карт. Особенность реализации МБП (по сравнению с некоторыми BMP-механизмами других ИТ-поставщиков) состоит в том, что в результате визуального проектирования бизнес-процесса разработчик не получает программу с исходным кодом внутреннего языка (большинство других средств визуального проектирования формируют такой код). С определенной долей упрощения можно утверждать, что исходный код создаваемой программы образован как раз визуальным представлением ее логики (карта маршрута), которая дополнена отдельными фрагментами, написанными на внутреннем языке программирования.
Таким образом, карта маршрута одновременно адресована системе инструкцией по выполнению последовательности действий бизнес-процесса, описанием структуры этих действий в виде, понятном пользователю, и средством отображения текущего состояния бизнес-процесса.
Исполнение бизнес-процессов (точнее, экземпляров бизнес-процессов) осуществляется в среде платформы «1С:Предприятие». При этом бизнес-процесс можно рассматривать в качестве такого объекта информационной базы, как документ или элемент справочника. Его жизненный цикл начинается со старта (вызов метода «старт» или нажатие соответствующей кнопки в форме объекта бизнес-процесса) и завершается по достижении конечной точки (разумеется, если все задачи были выполнены).
Задачи — это тоже обычные объекты информационной базы, которые могут быть сформированы как механизмом бизнес-процессов, так и другими прикладными объектами и даже вручную. Задача имеет два состояния — «выполнена» и «не выполнена». Если задача сформирована в рамках бизнес-процесса, то после своего завершения она сообщает ему об этом, что приводит к продвижению бизнес-процесса по маршруту дальше (при выполнении всех необходимых для этого условий).
Для конкретного пользователя функционирование механизма бизнес-процессов выражается только в том, что он имеет дело со списком задач, которые обязан выполнить. Кладовщик, например, не должен задумываться о своем участии в каких-то процессах, его дело — при получении задания отпустить товар и зафиксировать эту операцию в системе.