ArcGIS Workflow Manager – меньше слов и больше дела

Савицкий Д.В., Esri CIS, e-mail: dsavitskiy@esri.cis

ArcGIS Workflow Manager Improves the Efficiency of GIS Operations

 

Счастливые обладатели более чем одного настольного рабочего места ArcGIS с первых дней начинают задумываться о зачастую «неожиданной» проблеме синхронизации данных между несколькими компьютерами. Наиболее умудренные жизнью в тот же день, пока еще в тайне от начальника, начинают растить мечту о сервере. Те же, кто с успехом преодолел не только трудности по приобретению и изучению программного обеспечения, но и смог развернуть на предприятии радующую глаз системного администратора централизованную систему хранения данных и обеспечения к ним доступа, осознают, что с решением задачи синхронизации данных на АРМ сотрудников появилась проблема синхронизации самих этих сотрудников. Да и сами сотрудники подчас были бы не против в кратчайшие сроки выполнить свои служебные обязанности и досрочно завершить рабочий день, а не тратить свое время на поиск необходимых данных у своих коллег, согласования своих действий, жалобы начальству на отсутствие необходимых сопутствующих материалов и т.п. Истинные гуру ArcGIS знают заветное название продукта, позволяющего достичь почти невозможного: одновременного спокойствия как начальника, так и подчиненных.

К чему это предисловие? Мы на основе собственного опыта решили по возможности беспристрастно и более внимательно посмотреть на возможности пакета ArcGIS Workflow Manager и постараться лучше понять, чем он может помочь пользователям ArcGIS, к которым мы не без основания относим и себя. Многие, к слову, продолжают использовать старое наименование этого продукта: Job Tracking или сокращенно JTX. Для начала расскажем об этом модуле подробней.

Итак, для чего предназначен ArcGIS Workflow Manager? Его главная и, по сути, единственная задача – координация работы ГИС-пользователей в терминах рабочих задач конкретной организации. Пользователи системы получают вполне конкретные задачи на выполнение, каждый согласно своей квалификации и должностным обязанностям. Для этого им достаточно открыть простое приложение с минималистическим интерфейсом, где они сразу смогут увидеть, над какими работами в данный момент трудятся их коллеги по предприятию, какие задачи еще только требуют решения, какие из них назначены их отделу, а нередко и конкретному сотруднику, какие сотрудники ожидают завершения его части работы, какие задачи более приоритетны. Теоретически, на этом экране можно найти всю необходимую информацию: от расположения объектов работы на обзорной карте, заданных сроков ее начала и окончания и до просмотра истории аналогичных работ на указанном участке местности. Пример стартового окна этого модуля приведен на рис. 1.

Чтобы этот обзор был более предметным и наглядным, мы воссоздали сценарий работы некой компании, прокладывающей и обслуживающей кабельные сети. В этой компании есть монтажная бригада, работу которой координирует и протоколирует отдел, использующий ArcGIS Workflow Manager. При этом, все данные и настройки, начиная от описания видов задач и заканчивая правами пользователей, хранятся и управляются с помощью технологии SDE. А вносимые изменения при помощи приложения для администратора сразу же влияют на работу клиентского приложения. Любая работа начинается (или должна начинаться) с постановки задачи. Пользователь, имеющий соответствующие права, создает новою задачу на выполнение работ. Уже из окна создания новой работы можно составить себе перечень возможностей по управлению деятельностью задействованных в ней сотрудников и проводимыми работами.

Пример начала работы с заданием приведен на рисунке 2. На нем показан момент выбора типа новой задачи с возможностью назначить ответственным за ее исполнение конкретного сотрудника или группу, задать дату начала выполнения и, при необходимости, дату, к которой задача должна быть выполнена, указать отличный от заданного по умолчанию набор данных, приоритетность задачи, «родительскую» задачу, от выполнения которой зависит наша. Нажав на кнопку «Advanced..» в левом нижнем углу окна можно перейти к вводу дополнительных данных: прикрепить к задаче любые дополнительные файлы и материалы, задать так называемую «область интереса» (AOI) – обозначить на карте участок, на котором будет выполняться поставленная задача (рис. 3).

Про AOI стоит рассказать особо. Собственно, это основной инструмент, позволяющий ввести понятие пространственного расположения выполняемых работ, глядя на обзорную карту оценить текущее положение дел по всем поставленным и выполненным задачам. Администратор в настройках может задать поведение системы в случае, когда указываемая на карте область выполнения работ пересекается с другими задачами, поведение системы в случае попытки пользователя выбрать объекты, находящиеся за пределами AOI текущей задачи. На рис. 4 в верхней половине окна открыта обзорная карта с расположением всех относящихся к пользователю задач, а в нижней половине красным цветом обозначена область, в пределах которой будет прокладываться кабель согласно текущему заданию.

Рассмотрим более внимательно, какую информацию по каждой задаче может получить исполнитель. Внизу окна есть закладки, переключаясь между которыми можно ознакомиться и добавить/изменить соответствующие свойства и данные:

  • Properties – общая информация о задаче: кому назначена, дата создания и сроки выполнения, зависимость от других задач, краткое описание.
  • Extended Properties – система позволяет добавить «внешние таблицы», которые будут связаны с конкретным типом работ и заполняться в автоматическом или полуавтоматическом режимах. Может быть удобно, к примеру, для интеграции с CMS- и ERP-системами.
  • Linked Properties – аналогично Extended Properties, но позволяет для одной задачи вести сразу несколько внешних таблиц.
  • History – протокол действий. Здесь отражаются абсолютно все действия, производимые всеми сотрудниками: от добавления нового комментария до внесения изменений в пространственные данные.
  • Notes – заметки. Любой сотрудник, к кому переходит выполнение задачи, может оставить здесь свои комментарии.
  • AOI – окно с картой, на которой обозначена территория выполнения работ.
  • Attachments – здесь доступны все прикрепленные к заданию дополнительные файлы и документы.
  • Holds – любое выполнение задания может быть прервано или приостановлено сотрудником по уважительным причинам. Администратор может создать любые виды подобных причин. По умолчанию в Workflow Manager созданы следующие: недостаток финансирования, требуется разрешение руководства, отсутствие необходимых данных, недостаток ресурсов, технические проблемы.
  • Dependencies – более тонкая настройка зависимостей. Можно указать, что переход к следующему шагу невозможен, пока не будут выполнены соответствующие шаги в другой задаче. Вместо шагов можно оперировать понятием статуса, в котором должна находиться задача: готовность к исполнению, редактирование данных, завершена и т.д.
  • Step Descriptions – детальное описание текущего шага. Ниже будет дано пояснение того, как для каждого типа заданий описываются необходимые действия и схема их последовательного выполнения.
  • Workflow – здесь можно ознакомиться с порядком выполнения шагов, представленном в виде логической схемы.

Часто выполнение одной задачи порождает еще одну или несколько. В нашем примере перед прокладкой нового кабеля может потребоваться обновить базовые карты или список необходимого оборудования, синхронизировать с диспетчерской службой врезку нового кабеля в имеющуюся сеть и т.д. В терминах Workflow Manager такие задачи называются зависимыми. Зависимость задается по принципу «родитель-потомки», и система отслеживает верную очередность выполнения всех заданий согласно имеющейся информации о том, как успешность выполнения одной задачи влияет на возможность приступить к работе по другим заданиям. При этом несколько зависимых задач могут выполняться как параллельно, так и в свою очередь, что требует правильной последовательности шагов других сотрудников.

Отдельный пункт в приложении администратора – настройка уведомлений. К каждому событию, каждому выполненному шагу и каждому действию можно привязать уведомление. Уведомление отправляется по каналам электронной почты. Сценарий уведомлений достаточно гибок и позволяет, к примеру, сообщать сотруднику о том, что в какой-то из задач требуется его вмешательство, сообщать руководителю отдела об успешном выполнении задачи или приостановке с указанием причины и многое другое. Помимо уведомлений, привязанных к событиям, существует еще отдельный их тип: пространственные уведомления. Подобное уведомление будет отправляться заинтересованным лицам в случае создания или редактирования определенных данных в базе геоданных, работы сотрудников на определенном участке местности и многое другое. В нашем примере, в случае прокладки монтажной бригадой нового кабеля желательно в автоматическом режиме уведомить диспетчерскую службу о появившемся новом элементе сети, руководителя отдела – о необходимости организации подключения нового кабеля в инженерную сеть, планово-финансовый отдел – об образовании нового актива, который вскоре будет необходимо поставить на баланс.

Изюминка Workflow Manager – это не только связь пространственных и непростраственных данных в терминах бизнес-процессов, но и схематическое описание на логической схеме этих бизнес-процессов с подробностью до отдельного действия. Пошаговая схема, используемая в нашем примере при создании новой задачи на прокладку кабеля, приведена на рис. 5. За неимением возможности в печатном издании привести пример по-настоящему рабочей, сложной по структуре и объемной схемы бизнес процессов на этом рисунке мы привели простейшую схему, согласно которой при выполнении задания сотрудником проверяется наличие в ArcSDE новой версии данных или, при необходимости, создания этой версии. При переходе сотрудником к шагу редактирования, автоматически запускается приложение ArcMap с уже подгруженной картой и служебными данными, подключенными к созданной версии в ArcSDE, карта отцентрирована по заданному району работ. От сотрудника может и не потребоваться знание ArcMap, достаточно уметь ввести или отредактировать необходимые объекты на карте и закрыть приложение – данные будут автоматически сохранены в реплике в базе геоданных. Пример автоматически запущенного приложения ArcMap с подгруженными в него необходимыми для работы данными приведен на рис. 6.

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

В стандартную поставку ArcGIS Workflow Manager входят два отчета: отчет о загруженности работой каждого сотрудника и отчет о степени выполнения в процентах по каждому из текущих заданий. Отчеты можно просматривать как непосредственно в окне Workflow Manager, так и сделать их экспорт в отдельный HTML-файл. Внешний вид отчетов можно настраивать с помощью подгруженного администратором файла каскадных стилей (CSS-файл). Пример отчета о загруженности сотрудников приведен на рис. 7.

В заключение нужно сказать пару слов о требованиях к данному ПО. ArcGIS Workflow Manager доступен в двух сборках: в виде настольного клиента и в виде модуля к ArcGIS Server. Мы тестировали настольного клиента, однако для большой организации использование тонкого клиента на ArcGIS Server в некоторых случаях может оказаться предпочтительней, в частности из-за отсутствия необходимости лицензирования каждого отдельного рабочего места. В своей работе Workflow Manager активно использует ArcSDE, и если для демонстрации мы использовали Personal SDE и условно-бесплатный MS SQL Server Express, то в случае развертывания продукта на предприятии, конечно же без ArcGIS Server не обойтись. Для отправки автоматических сообщений по e-mail потребуется подключение к почтовому серверу, который разрешит использовать себя как открытый SMTP-релей, в пределах локальной сети организовать подобное в настоящее время не представляет никаких проблем.

Немаловажный факт, что Workflow Manager применяется на рабочих местах не только ГИС-специалистов, но и сотрудников, не работающих с «географией» в принципе. Такой подход позволяет синхронизировать действия всех отделов и департаментов, автоматически реагировать на изменение обстановки. К примеру, после введения хозяйственным департаментом в СУБД текстовой информации о появившемся новом объекте, отдел ГИС получает задачу на перевыпуск соответствующих карт и планов.

Workflow Manager, совместно с Task Assistance Manager, активно используется в таких специализированных на конкретной предметной области продуктах, как Esri Aeronautical Solution и Esri Nautical Solution. В промышленной эксплуатации перечисленных продуктов Workflow Manager позволяет синхронизировать работу не только нескольких департаментов внутри компании, но даже отдельных филиалов, расположенных в разных населенных пунктах. Используемые в подобных внедрениях сценарии активно используют технологию ArcSDE: для ведения истории изменений объектов в базе геоданных, создания множества реплик перед началом внесения изменений, которые «путешествуют» из отдела в отдел, пока задача не получит статус завершенной и сделанные изменения не будут реплицированы в основную рабочую СУБД. Подобные сценарии требуют от администратора хорошего понимания не только принципов работы Workflow Manager, но и знания функциональных возможностей серверных и настольных продуктов платформы ArcGIS.

Дополнительную информацию можно посмотреть на сайте Esri (www.esri.com/software/arcgis/extensions/arcgis-workflow-manager).

 


Рис. 1. Главное окно Workflow Manager.

Рис. 2. Окно создания новой задачи.

Рис. 3. Привязка новой задачи к определенному участку местности.

Рис. 4. Просмотр пользователем деталей назначенной ему задачи.

Рис. 5. Пошаговая схема описания работ.

Рис. 6. Автоматически запущенное приложение ArcMap с подгруженной картой и описанием задачи.

Рис. 7. Пример отчета о загруженности сотрудников.