Задача управления контентом на предприятиях перешла сегодня в разряд стратегических. Создаются единые корпоративные хранилища, в которых все типы контента находятся под управлением специализированных программных систем, обеспечивающих классификацию и структуризацию информации, доступ к ней всех заинтересованных сторон, автоматизирующих все этапы жизненного цикла контента. Однако контент не может существовать отдельно от бизнес-процессов.
Сегодня на предприятиях развертываются хранилища, в которых корпоративный контент находится под управлением специализированных программных систем класса Enterprise Content Management (ECM). Но контент не может существовать отдельно от бизнес-процессов предприятий. В 80-х годах появились технологии автоматизации бизнес-процессов (workflow). Некоторые из них были встроены в системы управления документами и далее развивались в их рамках, другие существовали как отдельные продукты и постепенно эволюционировали в программное обеспечение управления бизнес-процессами (business process management, BPM). Задача таких систем — интеграция различных приложений с использованием единых стандартов, поддержка сервис-ориентированной архитектуры и управление потоками работ в оперативном режиме. К сожалению, многие современные системы класса BPM не ориентированы на управление неструктурированной информацией, поэтому для управления бизнес-процессами, ориентированными на контент, предприятия либо используют встроенные в системы ECM механизмы workflow, либо используют внешние инструменты BPM, для которых корпоративное хранилище EСM — лишь еще одна внешняя система. Оба подхода не лишены недостатков.
Ориентированным на контент называют такой процесс, в котором корпоративный контент либо определяет ход процесса, либо является его результатом. В качестве примера можно рассмотреть процесс выдачи займа, который начинается с поступления заявления — документа, к которому прикладывают отчеты о кредитных операциях и оценке стоимости имущества и другую информацию. Остальные документы (в том числе, само долговое обязательство) создают уже после утверждения решения о выдаче займа. В таком процессе данные из документов извлекают и используют согласно автоматизированным бизнес-правилам. В то же время исходные документы оставляют неизменными для того, чтобы впоследствии применять их в других бизнес-процессах (в том числе, в обслуживании клиентов, аудите, проверке соблюдения норм регулирования и т.п.), стартующих уже после завершения процесса выдачи займа.
Для автоматизации различных процессов, ориентированных на контент, необходима система BPM, интегрированная с инструментарием ECM, и поддерживающая три основные функции.
- Поддержка шаблонов операций над контентом. Любая система BPM поставляется с библиотекой типовых задач — операций, которые система может выполнить без программирования, и которые можно просто выбрать из «палитры». Такими задачами могут быть, например, отправка электронной почты или выполнение XML-преобразования. Типовыми операциями над контентом являются и выписка, и регистрация контента в хранилище, установка периодов хранения, изменение метаданных или публикация контента в Web. Системы ECM предоставляют интерфейсы API для подобных операций, но лишь некоторые из продуктов категории BPM имеют эти функции в составе стандартных возможностей.
- Обработка событий при работе с контентом. Системы BPM реагируют в оперативном режиме на события, которые происходят во внешних системах. Если изменяется информация о клиенте, то, к примеру, CRM-приложение может автоматически сформировать событие; то же самое может и сделать ERP-приложение, если на складе закончилась продукция. Эти системы должны «знать», как другие системы будут использовать их события. Такой тип интеграции называют слабо связанным; его основная цель — сделать процессы более гибкими. Системы ECM формируют события, когда добавляется новый объект, изменяются метаданные или превышен срок хранения документа и т.д.
- Поддержка XML. Системы BPM «видят» XML на уровне хранимых данных; они умеют обрабатывать, проверять и преобразовывать XML-документы с использованием встроенных функций. Системы ECM «видят» XML как объект контента и предоставляют операции по выписке и регистрации, контролю сроков хранения, индексации метаданных и преобразованию форматов. Между тем необходимо уметь управлять как данными в формате XML, так и XML-документом как таковым.
Documentum Business Process Management
Лишь некоторые из поставщиков «чистых» BPM-решений (например, Savvion и Staffware) включили в свои продукты поддержку интеграции с системами ECM. Однако и ряд поставщиков систем класса ECM продвинулись в направлении развития BPM-механизмов. Такую платформу предоставляет и компания Documentum. В ее основу положены менеджер бизнес-процессов Business Process Manager и сервисы бизнес-процессов Business Process Service. Собственно говоря, компания и ранее предлагала средства автоматизации бизнес-процессов, тесно интегрированные с хранилищем Documentum и объектной моделью. Так, в 1999 году был выпущен Workflow Manager, специально предназначенный для поддержки типовых процессов жизненного цикла контента (создание, проверка, утверждение, распространение, архивирование). В новых продуктах BPM и BPS уже имеется полный спектр средств управления бизнес-процессами.
Спектр ориентированных на контент бизнес-процессов велик, а их влияние на бизнес огромно. Все эти процессы можно разделить на четыре основные категории: процессы жизненного цикла контента, процессы с неизменяемым контентом, процессы коллективной работы и ориентированные на контент фрагменты корпоративных бизнес-процессов.
Процессы жизненного цикла контента охватывают задачи создания, сбора, проверки, утверждения, публикации, распространения и архивирования. Их задача — подготовка контента и доведение его до пользователей. Среди примеров процессов данной категории уместно привести разработку и поддержку Web-сайтов, технической или отчетной документации, маркетинговых материалов. Именно поддержке таких процессов уделяется особое внимание в традиционных системах.
Процессы с неизменяемым контентом (например, управление заказами, оплата счетов, гарантирование займов, обслуживание клиентов и т.д.) запускаются обычно при поступлении определенного документа — заказа, запроса, счета, жалобы, заявки и др. Все это документы с неизменяемым или фиксированным, контентом. Фиксированный контент не подлежит редактированию или исправлению, но включает информацию, определяющую движение процесса, и обычно должен быть сохранен для дальнейшего использования. Примером подобного процесса может служить обработка изображений документов, где фиксированный контент поступает в организацию в виде бумажного документа или факса. Однако сегодня фиксированный контент все чаще представляет собой Web-формы, XML-сообщения, электронные письма и др.
Новые продукты расширяют диапазон применения платформы Documentum на обработку больших объемов фиксированного контента за счет готовых шаблонов работ, интегрирующих автоматические методы управления объектами хранилища с внешними системами, и поддержки событий, позволяющих процессам незамедлительно реагировать на новые или модифицированные объекты контента и сообщения из внешних систем. Многие известные инструменты управления корпоративными бизнес-процессами определяют ход процесса в зависимости от данных из получаемого XML-документа, однако они, как правило, не дают возможности управлять этим документом как корпоративной записью с большим сроком службы. Другие производители систем управления контентом предлагают встроенные средства управления процессами с неизменяемым контентом, но и в них обычно отсутствует запуск этапов процесса в ответ на события, что очень важно в процессах с фиксированным контентом.
Программное обеспечение для управления процессами коллективной работы предоставляет единое рабочее пространство, находясь в котором, сотрудники могут общаться с коллегами при работе над проектом. Объекты контента, в том числе документы, дискуссии, опросы, таблицы данных, обеспечивают среду коллективной работы. В Documentum BPM за счет интеграции Documentum eRoom Enterprise со структурированными процессами предлагается оригинальная модель сотрудничества: eRoom может выступать в качестве задачи или подпроцесса более крупного процесса BPM, и, обратно, структурированный бизнес-процесс можно запустить из eRoom.
Нередки ситуации, когда часть глобального корпоративного бизнес-процесса ориентирована на контент. Следовательно, управление главным (сквозным) процессом необходимо интегрировать с процессом ориентированным на контент. Рис. 1 иллюстрирует запуск новой продукции в крупной компании, выпускающей полупроводниковые приборы. Для управления сквозным процессом используется программный продукт компании Tibco, а его отдельными компонентами — системы Agile Product Lifecycle Management, SAP Manufacturing Requirements Planning и Documentum BPM (для публикации технической документации). В определенной точке главного процесса инструментарий управления корпоративными процессами от Tibco запускает в Documentum цикл публикации технической документации. Для этого в очередь, контролируемую Documentum BPS, направляется соответствующее сообщение. Процесс Documentum подобным же образом использует BPS для отправки обратно в Tibco сообщений о таких событиях, как завершение процесса или прохождение промежуточных этапов. Каждая часть сквозного процесса оптимизирована по отдельности, а управление им неразрывно.
Рис. 1. BPS позволяет без программирования интегрировать BPM с корпоративными процессами |
Стандарты XML имеют большое значение для развития электронного бизнеса, поскольку ломают барьеры между информационными системами компаний-партнеров или подразделений корпораций, стирает границы между данными и контентом. Если заказ поступает в виде XML-сообщения, нельзя сразу сказать однозначно, будут ли это данные или контент. С помощью корпоративных систем BPM из заказа извлекают данные и используют их для запуска процесса или обновления информации внешних систем, однако по завершении процесса об исходном документе обычно забывают. Обращаться с бумажными заказами принято иначе. Их изображения хранят долгое время даже после поставки товара, поскольку они могут понадобиться специалистам службы клиентского сервиса, аудиторам и многим другим. В большинстве случаев XML-сообщением нужно управлять так же, как и другой деловой документацией — индексировать и хранить в безопасном, расширяемом хранилище с контролируемым доступом. В Documentum BPM учтена эта двойственная природа XML-сообщения: им управляют, с одной стороны, как объектом контента (в хранилище), а с другой — как данными процессов (анализируют, подтверждают, изменяют и интегрируют с внешними системами с помощью разнообразных шаблонов работ). В качестве контента Documentum позволяет обрабатывать XML-сообщения в деловых процессах, вести журнал и регистрировать их как записи или перекомпоновывать для сайтов, порталов и других приложений. С помощью инструментария автоматизации бизнес-процессов Documentum можно декомпозировать сложное XML-сообщение на части и направить их по отдельным параллельным маршрутам обработки, сохранив при этом целостность самого сообщения.
Разработчики бизнес-процессов могут воспользоваться не только редактором Documentum Workflow Manager, но и новым редактором в составе Business Process Manager. Теперь в проектируемых процессах доступен весь набор сервисов Documentum ECM, и процессы можно интегрировать с внешними системами с помощью стандартных интерфейсов. Новый инструмент визуального проектирования позволяет автоматизировать сложные бизнес-процессы, не прибегая к программированию, собирая и повторно используя готовые компоненты. Documentum BPM предлагает высокоуровневые средства распределения работ и управления очередями и дает пользователям возможность выполнять свои задачи, не покидая систему электронной почты или корпоративный портал.
В Documentum есть готовые шаблоны для всех типовых задач обработки контента (например, проверки и утверждения документа), а также полностью автоматизированные методы управления контентом (в частности, выписка/регистрация, модифицирование метаданных, преобразование или регистрация записи). Кроме того, в BPM имеются готовые шаблоны интеграции приложений, с помощью которых можно вызывать сервисы внешних систем или обеспечивать воздействие на процессы внешних событий. Дополнительно к готовым шаблонам работ пользователям разрешается создавать собственные и сохранять их в палитрах.
На рис. 2 показано, как проектируют бизнес-процесс в Business Process Manager. Сначала выбирают необходимые шаблоны работ из палитры, расположенной в правой части экрана, а затем компонуют их в маршрут, после чего конфигурируют каждую работу процесса с помощью простого в использовании визуального интерфейса или мастера. Помимо шаблонов работ предусмотрены шаблоны стандартных бизнес-процессов, из которых можно визуальными средствами компоновать сложные процессы, ставя их последовательно или вкладывая друг в друга.
Рис. 2. Business Process Manager позволяет компоновать процессы из готовых шаблонов |
В Documentum BPM имеется дизайнер форм Forms Builder — средство визуального проектирования, построенное на основе стандарта W3C XForms. С его помощью можно без программирования проектировать сложные пользовательские Web-интерфейсы, интегрированные с бизнес-процессами. Дизайнер связывает элементы макета форм с данными процесса и автоматически генерирует HTML-страницы. Если же разработчику потребуется создать еще более специфическую форму, он сможет также воспользоваться имеющимся в Documentum средством проектирования на базе JSP.
Обычно в системах управления контентом используется очень простая модель распределения работ и управления процессами. Хотя при проектировании процессов в них и поддерживается назначение ролей исполнителей задач, таких как «автор» или «утверждающее лицо», эти роли, как правило, назначает в процессе выполнения конкретным людям тот, кто инициировал процесс, либо тот, кто выполнял предыдущую работу, выбирая их по фамилиям из списка. Таких возможностей вполне хватает для процессов создания/проверки/ утверждения/публикации контента, но не для «настоящего» BPM. Например, при обработке изображений документов и в других процессах с большим объемом фиксированного контента необходимо ставить работы в общие очереди и гибко формировать команды их исполнителей. В Documentum есть мощное средство распределения работ на базе наборов ролей, т.е. списков ролей, соотнесенных со списками фамилий отдельных пользователей или их групп в зависимости от определенного процесса, работы или пользователя. Когда исполнителя работы назначают на роль, разработчик процесса устанавливает правила, которые позволяют динамически выбирать определенный набор ролей, зависящий от инициатора процесса, исполнителя предыдущей работы, установок процесса и т.д. Исполнитель работы вправе делегировать ее другому пользователю или определить второй состав исполнителей. Для каждой работы можно предусмотреть рассылку электронных сообщений в тех случаях, когда она не была либо начата, либо закончена в определенное время.
Сегодня многие пользователи «живут» в одной из двух прикладных сред — электронной почте или корпоративном информационном портале — и предпочитают выполнять все свои задачи именно в ней. В большинстве систем управления бизнес-процессами пользователю направляется электронное сообщение о том, что он назначен на выполнение нового задания; однако, чтобы выполнить его, приходится заходить в отдельное Web-приложение. Система Documentum позволяет работать над заданиями, не покидая систему электронной почты или портал. Documentum BPM поддерживает оба интерфейсных стандарта JSR168 и .Net Portal, поэтому почтовый ящик BPM, интерактивные формы и все функции управления контентом можно использовать непосредственно из портала, построенного на базе популярных серверов приложений таких компаний, как IBM, BEA Systems, SAP, Plumtree и Microsoft.
Основное преимущество Documentum BPM состоит во встроенном доступе ко всем сервисам управления корпоративным контентом Documentum ECM, в том числе, сервисам управления документами и записями, коллективной работы, преобразования и распространения контента. В архитектуре Documentum каждая часть расположенного в хранилище контента — объект, для которого предусмотрены атрибуты (метаданные), идентифицирующие и классифицирующие его, и методы — операции, которые могут над ним выполнять клиенты Documentum ECM, приложения и работы BPM. Методы управления контентом позволяют использовать весь набор сервисов управления контентом Documentum (выписка/регистрация, копирование в папку, уничтожение и др.) в работах процессов; для этого разработчик просто выбирает необходимый метод из списка, настраивая работу процесса.
События контента — обратная сторона методов управления контента. Когда изменяется состояние объекта, находящегося в хранилище (например, его создают, запрашивают или регистрируют), Documentum автоматически генерирует событие, т.е. сигнал об изменении состояния. В Documentum BPM есть встроенный брокер, обеспечивающий автоматический запуск тех или иных операций после того, как произошло определенное событие. Так, добавление в хранилище электронного письма или факса или регистрация новой версии документа могут повлечь за собой автоматический запуск бизнес-процесса. При этом писать код не требуется. Documentum позволяет не только запускать, но и останавливать процесс на том или ином этапе до тех пор, пока не произойдет определенное событие, например, будет получен какой-то документ. Несмотря на то, что в некоторых других системах BPM реализована возможность активируемого событиями запуска процессов, лишь в Documentum есть функция приостановки процесса до наступления события.
Еще одно новшество — интеграция с корпоративным порталом eRoom Enterprise для организации коллективной работы. Доступ к общим объектам eRoom, среди которых документы, дискуссии, голосования, опросы и таблицы данных, открыт только тем, кого пригласили в эту «комнату». Используя эти объекты, сотрудники могут совместно работать над запуском в производство новой продукции, назначением цены, подготовкой бюджета, а также разрешать проблемы с нехваткой сырья и вести переговоры по контрактам.
В Documentum BPM имеется шаблон Создать eRoom, помогающий пригласить в виртуальную комнату участников проекта и доставить туда данные и документы, а также шаблон Отослать в eRoom, служащий для направления заданий в ранее созданную электронную комнату. Пользователи eRoom получают задания во входящий внутренний ящик или по электронной почте. Внутри совместного рабочего пространства Documentum BPM создает объекты, соответствующие данным и документам, и направляет их в работу. Фактически, эти объекты — обратная связь с хранилищем, они используют его средства безопасности, контроля версий и другие функции. Подобным же образом собственные объекты eRoom (опросы, дискуссии и др.) можно отправить в бизнес-процесс Documentum, а затем возвратить обратно с помощью операции Отослать в eRoom.
Как уже говорилось, Documentum BPM рассматривает XML и как структурированные данные, и как контент. XML-документ можно сохранять и использовать в виде объекта хранилища, с его метаданными, версиями, методами управления и событиями. В то же время, в Documentum BPM имеются готовые шаблоны для анализа и подтверждения XML-данных, преобразования их с помощью XSLT и XPath, конвертирования в запросы Web-сервисов и декомпозиции на несколько объектов, которые разрешается направлять по разным маршрутам. Например, XML-спецификацию материалов преобразовывают в несколько объектов контента, использующихся в независимых процессах установки цены и формирования заказа. Шаблоны автоматической обработки XML можно компоновать в сложные процессы, включающие в себя интерактивные операции, методы управления контентом, события, операции интеграции.
Возможно, самая большая разница между технологиями BPM и традиционной автоматизацией бизнес-процессов состоит в наличии основанных на стандартах средств интеграции приложений предприятия (enterprise application integration, EAI). Интеграция долгое время была наиболее сложной и дорогостоящей задачей построения решений для автоматизации бизнес-процессов. Обычно интеграцию между процессом и одной-двумя внешними системами, скажем ERP, выполняли с помощью заказного программирования на API. Однако подобный подход неприемлем, когда систем много. В 90-х годах активно развивался программный инструментарий промежуточного слоя для EAI, основанный на корпоративной архитектуре обмена сообщениями наподобие Tibco и IBM MQSeries. Эти средства в состоянии решить проблему многоточечной интеграции — но не для продолжительных процессов. Новое поколение систем BPM позволяет связать модели таких процессов с инструментарием интеграции приложений предприятия с помощью двух технологий — обмена сообщениями и Web-сервисов.
Documentum BPS поддерживает двустороннюю интеграцию процессов с внешними системами — «из процессов» и «в процессы» (рис. 3). Интеграция, направленная из процессов к внешним системам, позволяет отсылать информацию или запрашивать сервисы внешних источников из процессов.
В свою очередь интеграция, идущая от внешних систем к процессам, позволяет направлять сообщения или события из внешних источников в процессы. В BPS есть получатели сообщений, поступающих по коммуникационным каналам HTTP, JMS или SMTP. Получатели, которые располагаются за сетевым экраном по причинам безопасности, передают сообщения в соответствующую программу обработки сообщений BPS. Та, в свою очередь, переводит сообщение либо в метод управления объектом хранилища, либо в событие BPM, которое, также как и событие контента, может запускать или останавливать рабочий процесс.
Андрей Николаев (andrei.nikolaev@documentum.ru) — сотрудник компании «Документум Сервисиз» (Санкт-Петербург).
Интеграция Web-сервисов в бизнес-процессы
С помощью BPS можно, не прибегая к программированию, решить в Documentum BPM задачу интеграции. Для примера рассмотрим Web-сервис заказа товара, который должен стать частью процесса обработки запроса на его закупку (см. рис.). Выходные данные, предоставляемые этим сервисом, применяются на последующих этапах процесса. Для того чтобы Web-сервис был доступен из бизнес-процесса, WSDL-описание нужно поместить в хранилище. Напомним, что язык WSDL определяет схемы (структуры данных) XML-документов, направляемых в запросе к Web-сервису и выдаваемых им в ответе. Каждый шаблон Web-сервиса задает параметры определенной операции интеграции, в том числе, имя WSDL-файла, порт запроса и т.д.
Когда разработчик хочет включить Web-сервис в бизнес-процесс, он начинает с того, что берет его шаблон из палитры, расположенной в левой части экрана, и помещает на диаграмму процесса, находящуюся справа. Далее он конфигурирует сервис, просто устанавливая параметры запроса и то, как будет сохраняться ответ. Документ запроса — это данные, которые будут поступать с предыдущего этапа процесса, их называют «входным пакетом». Ответ Web-сервиса представляет собой XML-документ, который будет прикреплен к пакету, направляемому в следующую задачу (в нашем примере — подтверждение запроса на закупку товара). Таким образом, Documentum BPM позволяет быстро разрабатывать интегрированные деловые процессы без программирования.