Урок 3. Мой первый бизнес-процесс
Введение
В ходе этого урока вы усовершенствуете приложение, созданное на предыдущем уроке, настроив следующий автоматизированный процесс заказа корпоративного автотранспорта:
Бизнес-логика
- Заказчик создает заявку на автомобиль.
- Заявка поступает на рассмотрение Секретарю.
- Секретарь одобряет либо отклоняет заявку.
- Одобренная заявка поступает на рассмотрение Диспетчеру гаража.
- Диспетчер гаража принимает либо отклоняет заявку в зависимости от наличия автомобиля в гараже.
- Если Диспетчер гаража принял заявку, Заказчику поступает уведомление об этом, а Водитель выполняет рейс.
- Если Секретарь и Диспетчер гаража отклоняют заявку, Заказчику поступает уведомление об этом, и процесс завершается.
Предусловия: пройден урок 2 «Мой первый реестр данных».
Расчётная продолжительность: 90 мин.
Примечание
В данном уроке представлен продукт Comindware Platform версии 5.0, внешний вид страниц и меню в других версиях продукта может отличаться.
Определения
-
Исполняемый бизнес-процесс
- Исполняемый бизнес-процесс — это процесс, автоматизированный с помощью программного обеспечения, например системы управления бизнес-процессами (BPMS) Comindware Platform.
- Исполняемый бизнес-процесс определяет кто, что и в какой последовательности должен сделать, а также обеспечивает оперативную передачу «дела» между подразделениями. Таким образом, система берет на себя контроль за всем процессом от заявки до закрытия «дела».
- Процессы в Comindware Platform могут взаимодействовать друг с другом, а также с внешними ресурсами, такими как серверы электронной почты и веб-сервисы.
- Исполняемый бизнес-процесс служит заменой электронной почты и Excel, позволяет упростить и автоматизировать документооборот, а также автоматически формировать документы по шаблонам.
- Исполняемый бизнес-процесс можно назвать «интерактивным регламентом». Традиционный регламент-документ предназначен для того, чтобы сотрудники периодически с ним сверялись, чтобы понять, что делать. В случае исполняемого бизнес-процесса координацией занимается компьютер.
- Диаграмма бизнес-процесса в нотации BPMN загружается в BPMS, и система следует ей, раздавая задания людям и вызывая функции информационных систем.
- Исполняемый процесс позволяет повысить эффективность работы:
- «дело» передается от одного сотрудника другому оперативно, безошибочно, вместе со всеми относящимися к нему данными;
- процесс гарантированно выполняется по утвержденной схеме, контролировать это не требуется;
- показатели процесса автоматически измеряются и выводятся на экран менеджеров в наглядном виде.
- Исполняемый бизнес-процесс имеет некоторое сходство с документооборотом, но это более совершенная форма автоматизации:
- информация хранится не в документах Word или PDF, а в виде структурированных данных (числа, даты, текстовые данные);
- маршрут процесса можно прописать более точно, чем это позволяют системы документооборота.
-
Шаблон процесса
- Настройка исполняемого бизнес-процесса в Comindware Platform выполняется с помощью шаблона процесса.
- Шаблон процесса состоит из диаграммы процесса в нотации BPMN 2.0, хранит экземпляры процесса и свойства, определяющие, как должны выполняться все экземпляра процесса.
- Каждый шаблон процесса связан с шаблоном записи, который хранит записи для экземпляров процесса.
Создание шаблона процесса
Настроим шаблона процесса заказа автотранспорта.
- На панели навигации слева выберите пункты «Настройки» — «Шаблоны».
- Перейдите на вкладку «Шаблоны процессов».
- Нажмите кнопку «Создать».
- Введите название шаблона «Заказ автотранспорта».
- Укажите приложение «Управление автопарком».
- В поле «Связанный шаблон» выберите шаблон «Заявки на автомобили».
- Нажмите кнопку «Создать».
Построение диаграммы бизнес-процесса
Примечание
В Comindware Platform для построения диаграмм бизнес-процесса используется нотация BPMN 2.0.
Нотация BPMN проста в понимании и часто применяется в бизнесе. Однозначная интерпретация диаграмм BPMN обеспечивает одинаковое понимание процесса бизнесом, аналитиками и ИТ-специалистами.
- Перейдите на вкладку «Диаграмма».
-
Отобразится конструктор диаграммы бизнес-процесса.
Конструктор диаграммы бизнес-процесса Конструктор диаграммы процесса
Конструктор диаграммы процесса состоит из трех частей, показанных на иллюстрации.
(1) Панель элементов, которые можно перетащить на диаграмму:
-
Действия — задачи и подпроцессы:
- задачи — пользовательские (выполнение действий данных участником процесса через форму задачи) и автоматические (выполнение сценария, вызов сервиса);
- подпроцессы — вызов процесса и встроенный подпроцесс;
-
События — начальное, промежуточное и конечное;
- Развилки — «или/или», «и» (параллельная);
- Общие элементы — дорожка, поток управления, комментарий.
(2) Диаграмма бизнес-процесса.
(3) Кнопки Выбрать версию, Очистить, Восстановить, Опубликовать, Проверить, Экспортировать.
-
-
Добавим на диаграмму дорожки.
Дорожка
Дорожка в BPMN представляет участников процесса. Их можно настроить произвольным образом по усмотрению проектировщика процесса.
Обычно дорожки представляют клиента, отдел, должность, роль или команду. Например, в нашем процессе Заказчик — это роль (Заказчик может быть из любого отдела), Гараж — отдел, а Секретарь — должность.
-
Перетащите с панели элементов три дорожки на диаграмму процесса. Элемент «Дорожка» расположен в группе «Общие элементы».
Перетаскивание дорожек на диаграмму бизнес-процесса -
Присвойте дорожкам названия: Заказчик, Секретарь, Гараж.
-
Чтобы переименовать дорожку, выберите её и в раскрывающемся меню элемента нажмите кнопку «Свойства» .
Переход к настройке дорожки -
В отобразившемся окне «Свойства дорожки» введите новое название и нажмите кнопку «Сохранить».
Переименование дорожки -
Удалите конечное событие. Для этого выберите его и в меню элемента нажмите кнопку «Удалить» .
Удаление элемента диаграммы процесса -
Перетащите элемент «Пользовательская задача» из раздела «Действия» с левой панели на дорожку «Секретарь».
Пользовательская задача
Пользовательскую задачу выполняет человек. При переходе процесса на этот элемент задача автоматически назначается одному или нескольким исполнителям.
-
Присвойте задаче название «Рассмотреть заявку». Для этого дважды нажмите название задачи.
- Присоедините поток управления от начального события к пользовательской задаче «Рассмотреть заявку».
-
Перетащите элемент «Развилка «или/или» на диаграмму и соедините его с задачей «Рассмотреть заявку».
Развилка «или/или»
Развилка «или/или» определяет альтернативные потоки процесса, из которых может быть выбран только один.
Для каждого потока (стрелки), выходящего из развилки, указывается логическое условие.
Процесс следует первому потоку, для которого условие возвращает
true
.Кроме того, можно выбрать поток «иначе» (по умолчанию), по которому процесс пойдет в том случае, если ни одно из условий на других потоках не выполнено.
-
Присоедините к развилке два потока управления.
-
Присвойте развилке название «Одобрена?». Для этого дважды нажмите развилку и введите ее название или нажмите кнопку «Свойства» в меню элемента.
Переход к настройке развилки «или/или» Бизнес-логика
Если Секретарь отклоняет заявку, то Заказчик получает уведомление об этом, после чего процесс завершается.
Если Секретарь одобряет заявку, то далее её обрабатывает Диспетчер гаража.
Реализуем на диаграмме эту бизнес-логику.
-
К развилке «Одобрена?» присоедините потоками управления две новые пользовательские задачи:
- «Отменить поездку» на дорожке «Заказчик»;
- «Принять заявку» на дорожке «Гараж».
-
Выберите развилку и в меню элемента нажмите кнопку «Свойства» .
- Отобразится окно «Свойства развилки «или/или».
- На вкладке «Дополнительные» укажите названия исходящих потоков — «Да» и «Нет». Для этого дважды нажмите соответствующие поля.
-
Сохраните настроенные свойства развилки.
Настройка потоков управления развилки «или/пли» -
К задаче «Отменить поездку» присоедините новое конечное событие.
-
Присвойте конечному событию название «Отказ».
События
События в BPMN можно рассматривать как этапы процесса — старт, промежуточные вехи, варианты завершения.
- Простое начальное событие может быть только одно, а начальных событий других типов — несколько.
- Промежуточных событий может быть несколько согласно бизнес-логике.
- Конечных событий может быть несколько для различных результатов завершения процесса.
Диаграмма бизнес-процесса с задачами «Рассмотреть заявку», «Принять заявку», «Отменить поездку» и конечным событием «Отказ» Бизнес-логика
После принятия заявки Диспетчер гаража проверяет наличие автомобиля для выполнения заявки. Если автомобиль отсутствует, заявка возвращается Секретарю.
-
Между начальным событием и задачей «Рассмотреть заявку» добавьте элемент «Развилка «или/или» и назовите его «Рассмотрение заявки».
Сходящаяся развилка «или/или»
Сходящаяся развилка «или/или» используется для объединения токенов с нескольких входящих потоков в исходящий поток. Вошедший в развилку токен сразу же выходит из неё (без ожидания других токенов).
-
От задачи «Принять заявку» добавьте элемент «Развилка «или/или».
- Задайте для развилки название «Есть машина?»
-
Добавьте поток управления от развилки «Есть машина?» к развилке «Рассмотрение заявки».
Диаграмма с развилкой «Есть машина?» Бизнес-логика
При наличии машины Заказчик получит уведомление «Совершить поездку», а Водитель приступит к выполнению рейса.
-
Добавьте элемент «Развилка «и» от развилки «Есть машина?».
Развилка «и»
Развилка «и» (параллельная) используется для разделения процесса на несколько потоков, которые будут выполняться одновременно.
-
От развилки «и» добавьте две пользовательских задачи:
- «Совершить поездку» для Заказчика;
- «Выполнить рейс» для сотрудника Гаража.
-
Укажите названия для исходящих потоков от развилки «Есть машина?»: «Да» и «Нет».
- Добавьте ещё одну развилку «и» и соедините с ней задачи «Совершить поездку» и «Выполнить рейс».
- Добавьте конечное событие и назовите его «Поездка завершена».
-
В итоге должна получиться следующая диаграмма:
Результирующая диаграмма бизнес-процесса заказа автотранспорта
Логика бизнес-процесса
Чтобы закрепить пройденный материал, обобщим диаграмму процесса заказа автотранспорта.
- Заказчик подаёт заявку.
- Секретарь рассматривает заявку:
- если Секретарь одобрил заявку, то выполняется шаг 4;
- если Секретарь отклонил заявку, то выполняется шаг 3.
- Заказчик получает уведомление о том, что заявка отклонена и следует отменить поездку. Процесс заказа автотранспорта завершается отказом.
- Диспетчер гаража рассматривает заявку:
- в случае наличия машины он передает заявку на выполнение Водителю и выполняется шаг 5;
- в случае отсутствия машины заявка возвращается Секретарю — на шаг 2.
- Заказчик получает уведомление о том, что машина выделена и следует совершить поездку, а Водитель приступает к выполнению рейса.
- Процесс завершается успехом.
Настройка форм пользовательских задач
Стартовая форма Заказчика
Настроим стартовую форму, которую будет заполнять Заказчик при запуске процесса.
-
Выберите на диаграмме «Начальное событие» и в раскрывшемся меню элемента нажмите кнопку «Стартовая форма» .
Переход к настройке стартовой формы -
Откроется конструктор стартовой формы.
- Для формы задачи используем созданную ранее форму согласования заявки.
- Перетащите с панели элементов форму «Заявки на автомобили — Основная форма» на макет формы.
- Сохраните форму.
-
Вернитесь к диаграмме процесса, нажав кнопку «Назад» в браузере.
Помещение на стартовую форму вложенной формы заявки и сохранение стартовой формы
Форма задачи Секретаря «Рассмотреть заявку»
Настроим форму пользовательской задачи, которую будет заполнять исполнитель — Секретарь.
-
Выберите задачу «Рассмотреть заявку» и в меню элемента нажмите кнопку «Форма» .
Переход к настройке формы задачи -
Отобразится конструктор формы задачи.
- Разверните элемент «Заявки на автомобили» на панели элементов слева.
-
Перетащите форму «Заявки на автомобили — Основная форма» на макет формы.
Бизнес-логика
Секретарь не должен редактировать поля формы заявки на автомобиль от Заказчика, поэтому изменим режим доступа к вложенной форме.
-
Выберите добавленную форму заявки и на панели свойств укажите режим доступа «Только чтение».
- Перетащите на макет формы под форму заявки на автомобиль элемент «Область» и присвойте ей название «Решение» с помощью панели свойств.
- Перетащите в область «Решение» атрибут «Заявка одобрена» из панели элементов.
-
Сохраните форму и вернитесь к диаграмме процесса, нажав кнопку «Назад» в браузере.
Настройка формы задачи «Рассмотреть заявку»
Форма задачи Диспетчера гаража «Принять заявку»
Настроим форму задачи, которую будет заполнять Диспетчер гаража.
- Выберите задачу «Принять заявку» на диаграмме процесса и в меню элемента нажмите кнопку «Форма» .
- Отобразится конструктор формы.
- Перетащите форму «Заявки на автомобили — Основная форма» на макет формы.
-
Укажите для дочерней формы режим доступа «Только чтение», чтобы Диспетчер гаража не мог редактировать заявку.
Бизнес-логика
Сотрудник Гаража должен принять или отклонить заявку в зависимости от наличия автомобиля в гараже.
Для этого добавим логический атрибут.
Comindware Platform позволяет добавлять атрибуты на лету, непосредственно во время настройки формы или таблицы.
-
Чтобы добавить атрибут в этот шаблон записи, нажмите кнопку «Добавить атрибут» рядом с пунктом «Заявки на автомобили» в панели элементов.
Создание атрибута с помощью конструктора диаграммы процесса -
В отобразившемся окне свойств атрибута выберите тип данных «Логический» и укажите название «Принято».
-
Нажмите кнопку «Сохранить».
Настройка нового логического атрибута -
Перетащите на макет формы новую область и переименуйте её в «Принятие заявки» с помощью панели свойств.
- Перетащите созданный атрибут «Принято» на область «Принятие заявки».
- Выберите поле «Принято» и на панели свойств укажите способ отображения «Отображать как переключатель».
-
Сохраните форму и вернитесь к диаграмме процесса с помощью кнопки «Назад» браузера.
Добавление на форму логического поля и настройка способа его отображения
Форма задачи Заказчика «Отменить поездку»
Бизнес-логика
Если заявка отклонена, Заказчик должен быть проинформирован об этом.
Форма пользовательской задачи в этом случае должна содержать только текст «Заявка отклонена» и данные заявки.
При этом Заказчик не должен менять какие-либо данные в заявке.
- Выберите на диаграмме процесса задачу «Отменить поездку» и в меню элемента нажмите кнопку «Форма» .
- Отобразится конструктор формы задачи.
- Перетащите на макет формы новую область и переименуйте её в «Заявка отклонена» с помощью панели свойств.
- На панели элементов разверните элемент «Заявки на автомобили».
- Перетащите форму «Заявки на автомобили — Основная форма» под область «Заявка отклонена».
- На панели свойств формы укажите режим доступа «Только чтение».
-
Сохраните форму и вернитесь к диаграмме процесса.
Настройка вложенной формы только для чтения
Форма задачи Заказчика «Совершить поездку»
Настройте форму для задачи, приходящей Заказчику, когда заявка одобрена.
- Перейдите к настройке формы задачи «Совершить поездку».
- Поместите на форму область «Совершить поездку» и вложенную форму «Заявки на автомобили — Основная форма».
- Установите для вложенной формы режим доступа «Только для чтения».
-
Сохраните форму и вернитесь к диаграмме процесса.
Настройка формы задачи «Совершить поездку»
Форма задачи Водителя «Выполнить рейс»
- Перейдите к настройке формы задачи «Выполнить рейс».
- Поместите на форму область «Выполнить рейс» и вложенную форму «Заявки на автомобили — Основная форма».
- Установите для вложенный формы режим доступа «Только для чтения».
- Сохраните форму и вернитесь к диаграмме процесса.
Настройка развилок
Перейдём к настройке потоков управления после развилок. На диаграмме есть две развилки — «Одобрена?» и «Есть машина?».
Развилка «Одобрена?»
Бизнес-логика
Поток, по которому процесс пойдёт после развилки «Одобрена?», задаёт логический атрибут «Заявка одобрена», значение которого устанавливает Секретарь при рассмотрении заявки.
Для управления ходом процесса определим условие для потока к задаче «Принять заявку» на основе значения атрибута «Заявка одобрена».
- Выберите развилку «Одобрена?» и в меню элемента нажмите кнопку «Свойства» .
- Откроется окно свойств развилки.
-
На вкладке «Дополнительные» для потока к задаче «Отменить поездку» установите флажок «Поток «иначе».
Выбор потока «иначе» Поток управления «иначе» от развилки «или/или»
Поток управления «иначе» (по умолчанию) — это поток из развилки «или/или», по которому пойдет процесс в том случае, если условия на всех остальных потоках не выполняются (значение логического выражения —
false
). -
Составим выражение для условия, при выполнении которого процесс пойдет дальше. Для этого нам потребуется системное имя атрибута «Заявка одобрена».
- На вкладке «Дополнительные» нажмите ячейку «Условие» в строке потока к задаче «Принять заявку».
-
Отобразится компактный редактор выражения.
-
При составлении выражения необходимо обратиться к системному имени атрибута.
- Введите символ
$
и введите строкуЗаяв
— первые буквы названия атрибута «Заявка одобрена». -
В отобразившемся раскрывающемся списке дважды нажмите системное имя атрибута
Заявкаодобрена
.Ссылки на атрибуты в формулах
В формулах префикс
$
перед системным именем атрибута используется, чтобы обратиться атрибуту текущего объекта.То есть формула
$Заявкаодобрена
возвращает значение атрибута «Заявка одобрена» —true
илиfalse
(ложь или истина). -
Нажмите кнопку .
-
Сохраните поток управления.
Настройка условия для потока управления с помощью формулы, возвращающей значение атрибута «Заявка одобрена»
Развилка «Есть машина?»
Бизнес-логика
Процесс должен перейти от развилки «Есть машина?» к развилке «и», если Диспетчер гаража установил для логического атрибута «Принято» значение true
.
- Выберите развилку «Есть машина?» и в меню элемента нажмите кнопку «Свойства» .
- Перейдите на вкладку «Дополнительные».
- Введите для потока «Да» формулу
$Принято
. -
Нажмите кнопку .
Ввод и сохранение выражения для доступа к атрибуту «Принято» в потоке управления -
Установите для потока к задаче «Рассмотреть заявку» флажок «Поток «иначе».
-
Сохраните поток управления.
Выбор потока управления по умолчанию и сохранение свойств развилки
Настройка исполнителей задач
Укажем исполнителей для пользовательских.
Задачи «Рассмотреть заявку», «Принять заявку» и «Выполнить рейс»
Совет
Для упрощения отладки процесса укажите исполнителем этих задач одного и того же пользователя, например свой аккаунт.
- Выберите пользовательскую задачу «Рассмотреть заявку» и в меню элемента нажмите кнопку «Свойства» .
- На вкладке «Дополнительные» выберите исполнителя в раскрывающемся списке «Исполнители».
-
Введите заголовок задачи «Заказ автотранспорта — Рассмотреть заявку».
Выбор исполнителя пользовательской задачи -
Нажмите кнопку «Сохранить».
- Аналогичным образом задайте исполнителей и заголовки задач «Принять заявку» и «Выполнить рейс».
Задачи «Отменить поездку» и «Совершить поездку»
Для задач «Отменить поездку» и «Совершить поездку» сделаем исполнителя вычисляемым — это должен быть пользователь, который инициировал процесс, то есть Заказчик.
Системный атрибут «Создатель»
Системный атрибут «Создатель» (_creator
) содержит ID аккаунта, который запустил экземпляр процесса.
- Выберите задачу «Отменить поездку» и в меню элемента нажмите кнопку «Свойства» .
- Отобразится окно «Свойства пользовательской задачи».
- На вкладке «Дополнительные» в поле «Исполнители» выберите пункт «Атрибут».
- Нажмите стрелку вниз в поле «Исполнители».
- Выберите атрибут «Создатель» (
_creator
). - Введите заголовок задачи «Заказ автотранспорта — Отменить поездку».
-
Сохраните пользовательскую задачу.
Назначение исполнителя задачи по атрибуту _creator -
Аналогичным образом назначьте исполнителем инициатора процесса и задайте заголовок задачи «Совершить поездку».
Проверка и публикация процесса
Вы настроили шаблон бизнес-процесса. Чтобы применить изменения и запустить процесс, его необходимо опубликовать.
Диаграмму бизнес-процесса рекомендуется публиковать каждый раз после внесения изменений.
Перед публикацией проверьте диаграмму, чтобы убедиться, что формулы верны и диаграмма соответствует нотации BPMN.
-
Нажмите кнопку «Проверить» в конструкторе диаграммы процесса.
-Если обнаружены какие-либо ошибки, элементы с ошибками будут выделены красным цветом. Щёлкните восклицательный знак рядом с выделенным элементом, чтобы просмотреть сообщения об ошибках. -Если диаграмма не содержит ошибок, появится сообщение «Ошибок нет», после чего диаграмму можно публиковать.
-
Нажмите кнопку «Опубликовать».
Тестирование: запуск процесса и «Мои задачи»
Вы настроили и опубликовали бизнес-процесс, теперь протестируйте его в роли пользователя.
- Перейдите на вкладку «Свойства» шаблона процесса «Заказ автотранспорта».
-
Нажмите кнопку «Перейти к экземплярам».
Переход к списку экземпляров бизнес-процесса -
В отобразившемся списке «Все записи» нажмите кнопку «Создать».
- Отобразится стартовая форма процесса.
- Заполните форму в роли Заказчика.
-
Нажмите кнопку «Создать».
Создание новой заявки на автомобиль -
Запущенный экземпляр процесса отобразится в списке.
- Проверьте наличие задачи «Рассмотреть заявку», в которой исполнителем назначены вы сами.
-
Перейдите на страницу «Мои задачи» с помощью панели навигации слева.
Переход к странице «Мои задачи» -
Отобразится список назначенных вам активных задач.
-
Откройте задачу, дважды нажав её в списке.
Список активных задач пользователя -
Отобразится форма рассмотрения заявки на автомобиль.
- Установите флажок «Заявка одобрена», то есть одобрите заявку в роли Секретаря.
-
Нажмите кнопку «Завершить задачу».
Рассмотрение заявки на автомобиль и завершение задачи -
Откройте страницу «Мои задачи».
- В списке появится задача «Заказ автотранспорта — Принять заявку».
- В поле «Принято» выберите пункт «Нет». Это означает, что Диспетчер гаража не смог выделить автомобиль для заявки и вернул её Секретарю.
-
Завершите задачу.
Отклонение заявки на автомобиль в гараже и ее возврат Секретарю -
Вернитесь к списку своих задач.
- В списке появится задача «Заказ автотранспорта — Рассмотреть заявку».
- Откройте задачу и снимите флажок «Заявка одобрена», то есть отклоните заявку в роли Секретаря.
- Завершите задачу.
- Откройте страницу «Мои задачи».
- В списке задач появится задача «Заказ автотранспорта — Отменить поездку». Это означает, что ваша заявка на автомобиль отклонена и вам как Заказчику пришло об этом уведомление.
- Завершите задачу.
- Бизнес-процесс будет завершён.
Результаты
Вы создали свой первый бизнес-процесс, настроили для него формы задач и протестировали запуск и исполнение задач процесса.
В следующем уроке вы узнаете, как отследить историю запущенного процесса, и настроите информационные страницы с диаграммами для просмотра статистики за период.
Эта статья была полезна 1 чел.