Заявка (Ticket)
Ключевые принципы
Заявка - Бизнес-объект, обрабатываемый в рабочем процессе.
- Одной заявке соответствует один экземпляр процесса в процессном движке.
- При запуске процесса ID заявки помещается в business key (Camunda 7, UniBPM), либо переменную процесса с наименованием businessKey (Camunda 8).
- Система определяет, какой процесс должен быть запущен в процессном движке согласно следующему алгоритму:
- Если заявка имеет тип и для этого типа указан ключ процесса (process key), будет запущен процесс с указанным process key;
- Если тип заявки не указан, process key будет взят с рабочего процесса, в котором находится заявка.
- Если не удалось определить process key, процесс не запускается.
- Заявка позволяет хранить бизнес-данные (как в структурированном, так и в неструктурированном виде) без необходимости помещать их в контекст процесса.
В зависимости от назначения рабочего процесса, заявка может представлять собой:
- Обращение в службу поддержки или инцидент (Service Desk);
- Заявление на отпуск, перевод, прием на работу и т.д. (процессы HR);
- User story (процессы разработки ПО, Scrum, Agile);
- Задачу или поручение руководителя (Task Tracker);
- Лид или договор (воронка сделки);
- Заявка на закупку (процессы Supplier Relationship Management);
- Согласование документа (процессы электронного документооборота).
Новая заявка может быть создана:
- Вручную пользователем (на странице рабочего процесса);
- Почтовым обработчиком;
- Через REST API.
Атрибуты
Идентификатор (id)
UUID
Идентификатор - обязательный уникальный атрибут в формате UUID v.4, позволяющий идентифицировать заявку. Идентификатор не выводится в пользовательском интерфейсе по-умолчанию, но может быть использован в фильтрах табличных представлений. В случае, если по заявке запускается процесс, ID заявки становится внешним ключом (business key), связывающим заявку с экземпляром процесса в процессном движке.
Владелец (owner)
User
Владелец заявки - необязательный атрибут. Пользователь системы, являющийся владельцем заявки.
В зависимости от назначения рабочего процесса, владелец может быть как автором (создателем) заявки, так и исполнителем по ней.
Например, в процессах Service Desk владельцем заявки может быть лицо, ответственное за обработку обращения.
Если заявку создает пользователь, то он автоматически становится ее владельцем (если не указал в качестве владельца другого пользователя).
Ответственный (responsible)
User
Ответственный - необязательный атрибут. Пользователь системы, являющийся конечным исполнителем по заявке. Так, например, если заявка представляет собой пользовательскую историю в процессе разработки ПО (Scrum, Agile), владельцем заявки может быть аналитик, её сформулировавший.
Владелец и ответственный:
- Работают с заявкой в рамках их полномочий;
- Получают уведомления об изменениях по заявке.
Наименование (name)
String
Наименование - обязательный неуникальный атрибут, указывается при создании заявки. Короткое описание, использующееся для идентификации бизнес-объекта. В зависимости от назначения рабочего процесса может использоваться в качестве темы задачи или письма, номера обращения или договора, наименования клиента и т.д.
Описание (body)
Описание - необязательный атрибут. Представляет собой форматированный текст (в формате HTML).
Используется для хранения неструктурированного текста (например описание работ, которые должны быть выполнены или текст клиентского обращения).
Аналог - тело письма (E-mail). Вставляемые в описание изображения автоматически добавляются во вложенные файлы.
Статус (state)
TicketState
Статус - необязательный атрибут, содержащий состояние заявки. Статусная модель настраивается владельцем рабочего процесса или администратором системы. Статус (например: в работе, оплачено, завершено) присваивается моделью процесса и не может быть указан пользователем.
Тип (type)
TicketType
Тип - обязательный атрибут, содержащий тип заявки. Справочник Типы заявок настраивается владельцем рабочего процесса или администратором системы. Типы заявок нужны, когда в одном рабочем процессе нужно использовать несколько разных моделей процессов. Например, в рабочем процессе HR может быть несколько разных бизнес-процессов, отличающихся по структуре: заявление на отпуск, прием на работу и т.д.
Сервис (service)
Service
Сервис - необязательный атрибут, связывающий заявку с сервисом. Используется, если заявка связана с потребляемой или предоставляемой услугой (например, в процессах ITSM, Service Desk). Справочник сервисов настраивается администратором системы.
Приоритет (priority)
TicketPriority
Приоритет - необязательный атрибут, указывающий приоритетность заявки. Справочник приоритетов фиксирован и имеет значения (в порядке убывания):
- Очень высокий (VERY_HIGH)
- Высокий (HIGH)
- Средний (MEDIUM)
- Низкий (LOW)
- Очень низкий (VERY_LOW)
Пять значений, должно хватить за глаза, как 640 Кбайт RAM в 1981 году! 😀
С каждым значением связан цветовой индикатор, визуально подсвечивающий приоритет заявки.
Приоритет помогает пользователю идентифицировать заявки, которые должны обработаны в первую очередь.
Влияние (impact)
Impact
Влияние - необязательный атрибут, указывающий “значимость” заявки. Справочник приоритетов фиксирован и имеет значения (в порядке убывания):
- Очень высокое (VERY_HIGH)
- Высокое (HIGH)
- Среднее (MEDIUM)
- Низкое (LOW)
- Очень низкое (VERY_LOW)
В зависимости от назначения рабочего процесса, этот атрибут может использоваться как:
- Масштаб инцидента, число затронутых пользователей (в процессах управления инцидентами, ITSM)
- “Стоимость” лида (в воронке продаж);
- Трудоемкость задачи (в производственных процессах);
- Вероятность риска (в процессах риск-менеджмента);
- Оценка пригодности кандидата (в HR).
Веха (milestone)
Milestone
Веха - необязательный атрибут, используемый для группировки заявок. Справочник Вехи настраивается администратором системы или владельцем рабочего процесса.
В зависимости от назначения рабочего процесса, этот атрибут может использоваться для группировок заявок в:
- Релиз, спринт, версию (процессы разработки ПО);
- Этап работ (проект);
- Этап плана продаж (процессы CRM).
Срок выполнения (due date)
LocalDate
Срок выполнения - необязательный атрибут, позволяющий определить дату, до которой заявка должна быть выполнена.
Если текущая дата больше или равна значению, указанному в поле Срок выполнения, поля Наименование заявки и Срок выполнения подсвечиваются красным цветом, позволяя идентифицировать просроченные заявки.
Дата закрытия (closed time)
Instant
Дата закрытия - необязательный атрибут, позволяющий идентифицировать завершенные заявки. Может быть заполнен вручную пользователем или автоматически, с использованием статусной модели.
Персона (person)
Person
Персона - необязательный атрибут, связывающий заявку с Персоной. Может быть заполнен вручную пользователем или автоматически, при создании заявки почтовым шлюзом. Может использоваться в процессах CRM и Service Desk для идентификации клиента или пользователя - физического лица, от которого поступило обращение.
Организация (organization)
Organization
Организация - необязательный атрибут, связывающий заявку с Организацией. Может быть заполнен вручную пользователем или автоматически, при создании заявки почтовым шлюзом. Может использоваться в процессах CRM и Service Desk для идентификации клиента - юридического лица, от которого поступило обращение.
Метки (Labels)
Label
- необязательный атрибут
- Позволяет добавлять одну или несколько меток для классификации заявок (например:
bug,feature request,documentation,question). - Метки отображаются на карточке тикета и могут использоваться для фильтрации и поиска.
- Подробнее см. Метки.
Прочие атрибуты
- ID экземпляра процесса (process instance ID, String) - необязательный скрытый атрибут. Сохраняет ID экземпляра процесса в процессном движке. Пустое значение - процесс не запускался. Непустое значение - процесс запущен или был завершен.
- Рабочий процесс (workflow, Workflow) - обязательное скрытый атрибут. Связывает заявку с рабочим процессом.
Операции с заявкой
Бизнес-действия (ticket action)
Бизнес-действия - это события, которые могут произойти с заявкой на текущем этапе её обработки. С точки зрения процессного движка бизнес-действия - это сообщения BPMN Intermediate Message Catch Event, которые может отправить пользователь на странице заявки.
При нажатии на поле Состояние заявки (ticket state) система отправит запрос в процессный движок, получив перечень сообщений, которые экземпляр процесса сможет обработать на текущем этапе его выполнения. Перечень событий будет выведен пользователю в виде динамического выпадающего списка, где:
- Ключ = Message name. Пример:
<bpmn:message name="take" /> - Значение = Element name. Пример:
<bpmn:intermediateCatchEvent name="Взять в работу">
При нажатии на элемент выпадающего списка в процессный движок будет отправлено соответствующее элементу сообщение (Message name). Таким образом бизнес-действие обеспечивает обратную связь между пользователем и бизнес-процессом.
Примеры бизнес-действий:
- Счет оплачен (воронка сделки);
- Подписан договор (воронка сделки);
- Передать на тестирование (процесс разработки ПО);
- Предоставлено решение (Service Desk);
- Взять в работу (Task Tracker).
Важно! Совершение бизнес-действия не всегда приводит к изменению статуса заявки!
Подробнее: статусы заявки.
Дополнительные действия
- Удалить - вызывает меню удаления заявки и всех связанных с ней записей (вложения, комментарии, события, переписку).
- Переместить в - вызывает меню для перемещения заявки в другой рабочий процесс. При этом, существующий в процессном движке экземпляр процесса будет удален. После перемещения будет запущен новый экземпляр процесса согласно настройкам целевого процесса и типа заявки.
- Объединить с - вызывает меню для объединения текущей заявку с выбранной (целевой). При этом, существующий в процессном движке экземпляр процесса будет удален. Связанные с исходной заявкой записи будут перенесены в целевую заявку, тело исходной заявки будет перенесено в виде комментария в целевую заявку.
- Создать копию - вызывает меню копирования заявки. Для новой заявки будет запущен новый экземпляр процесса. Связанные с исходной заявкой записи (комментарии, вложения, события) не копируются.
- Запустить процесс (Отменить процесс) - Выполняет запуск / удаление экземпляра процесса в процессном движке. Идентификатор экземпляра процесса сохраняется в поле ID экземпляра процесса (Process Instance ID).
Активность (Comments)
Элемент содержит связанные с заявкой записи, расположенные в хронологическом порядке:
Задачи (User Tasks)
Элемент содержит связанные с заявкой пользовательские задачи. Отображаются как завершенные задачи, так и находящиеся в работе, в формате:
- Наименование задачи;
- Статус задачи.
Связанные заявки (Ticket Links)
Элемент содержит связанные заявки, отображаемые в формате:
- Наименование заявки;
- Тип связи;
- Статус заявки.
Типы связей:
- BLOCKS - текущая заявка блокирует связанную заявку;
- BLOCKED_BY - текущая заявка заблокирована связанной заявкой;
- CAUSES - текущая заявка является причиной создания связанной заявки (родитель);
- CAUSED_BY - текущая заявка создана связанной заявкой (потомок);
- RELATES_TO - равноправная связь заявок.
Вложенные файлы (Attachment)
Список файлов, приложенных к заявке в формате:
- Наименование файла;
- Дата добавления.
Под списком вложений размещено поле для загрузки файлов.