С. Г. Толузаков
ПОДХОДЫ К ПОСТРОЕНИЮ СИСТЕМЫ ДОКУМЕНТООБОРОТА НА ОСНОВЕ IBM LOTUS DOMINO
Рассматриваются основные функции системы документооборота как составной части автоматизированной системы управления организацией, возможные подходы к реализации такой системы на платформах, предлагаемых IBM Lotus Software, а также сравнительный анализ этих подходов.
Создание автоматизированной системы управления организацией включает построение системы документооборота, позволяющей:
- вести учет входящей и исходящей корреспонденции;
- вести планирование деятельности организации;
- координировать действия сотрудников;
- контролировать исполнение принимаемых решений и поручений конкретных исполнителей;
- создавать аналитические отчеты о деятельности организации с целью корректирования дальнейших принимаемых руководителем организации решений.
Создание средств документооборота с использованием универсальных языков программирования, без использования готовых платформ, имеет немного преимуществ по сравнению с разработкой продуктов такого класса на основе готовых документноориентированных платформ. Использование же готовой платформы предоставляет разработчику набор средств, позволяющих манипулировать объектами высокой степени абстракции, ориентированными на учетно-отчетные операции, поиск по большому массиву документов, интеграцию с существующими источниками данных и прикладными службами и т.д.
В качестве платформы для создания такой системы несколькими производителями программного обеспечения предлагаются соответствующие продукты (Novell Groupwise, Microsoft Exchange, IBM Lotus Domino).
Платформа IBM Lotus Domino является достаточно конкурентоспособной среди других платформ, и многие организации выбирают ее при разработке документно-ориентированных систем. Эта платформа позволяет быстро разрабатывать и разворачивать приложения.
Более того, IBM Lotus Software предлагает надстройку над IBM Lotus Domino, позволяющую создавать приложения, ориентированные не только на учетно-отчетные операции, но и способные координировать и контролировать исполнение принимаемых решений. Этот продукт имеет название IBM Lotus Workflow.
Рассмотрим основные функции системы документооборота и два варианта практической реализации.
УЧЕТНО-ОТЧЕТНЫЕ ОПЕРАЦИИ
К учетно-отчетным операциям относятся такие, как регистрация входящей, исходящей и внутренней документации, имеющей отношение к организации и участвующей в принятии решений по основной деятельности.
В соответствии с номенклатурой дел организации в системе создаются дела и всевозможные типы документов (шаблоны), на основе которых документы
можно разбивать на группы, каким-то образом упорядочивать для эффективного поиска в процессе работы.
В качестве хранилища такого набора разнотипных документов и дел выбираются соответствующие источники данных, в зависимости от степени структуризации, потенциального объема документов и других параметров.
В случае, если документы не поддаются жесткой структуризации и их количество не превышает пятисот тысяч (за рабочий период до переведения их в архив), в качестве хранилища документов рекомендуется использовать среду Lotus Domino. При большем количестве документов в базе заметно падает производительность поисковых операций, что сказывается на производительности клиентских приложений. Отсутствие у документов жесткой структуры во многом определяется разноплановостью учитываемых операций и может быть скомпенсировано механизмом полнотекстового поиска, доступного именно для хранилищ на основе Notes Storage Facility (базы данных Lotus Domino, .nsf).
В другом случае, когда документы могут быть жестко структурированы и их количество измеряется миллионами (за рабочий период), в качестве хранилища можно (и следует) использовать источники данных, ориентированные на реляционную модель данных. В качестве поисковых средств в этом случае используется традиционный язык запросов SQL.
Возможен и промежуточный между упомянутыми выше вариант организации хранилища учетных данных. Например, когда большой выборке первичных документов (или записей), хранящихся в реляционной СУБД, ставится в соответствие некий агрегирующий или отчетный документ (содержащий, например, сумму по выборке и процентное соотношение частей выборки). Такого рода компромисс позволяет избежать избыточности первичных документов, хранящихся в документно-ориентированной базе данных, а также дает возможность хранить в агрегирующем документе объекты сложных типов.
АВТОМАТИЗАЦИЯ ПОТОКОВ ДОКУМЕНТОВ И РАБОТ
В простейшем случае автоматизация потоков работ в организации осуществляется с использованием средств программирования, предоставляемых выбранной платформой, а также (если это предусмотрено в платформе) внешних сред программирования, включая библиотеки динамического связывания (DLL, написанные на универсальных языках), интерфейсы общей объектной и документной модели (COM, DOM), средства Java/CORBA и проч.
Среды программирования, предоставляемые платформами, позволяют манипулировать документами, формами и выборками документов, связываться с офисными приложениями (в основном посредством OLE) для создания специфичных отчетов, а также хранить и изменять в документе информацию о его статусе и предстоящем маршруте движения. Для хранения текущего статуса и вычисления предстоящего маршрута используются специальные служебные поля. Вычисления на каждом шаге документооборота происходят на основе обработчиков событий форм и явных команд запуска сценариев.
Такой вариант реализации автоматизированного потока документов и их маршрутизации жестко закрепляет определенные деловые процессы, изменение которых требует изменения программного кода программистом. Добавление в систему новых типов документов также требует вмешательства программиста (рис. 1).
зация работ в зависимости от значений управляющих атрибутов документа (рис. 2).
Рис. 1. Автоматизация процесса визирования при помощи подформ
Другим подходом к автоматизации потоков документов и работ может служить использование готовых надстроек над существующими средствами управления документно-ориентированными хранилищами. Продуктами такого класса являются «WorkRoute», «Optima WorkFlow», «1С:Документооборот», «CompanyMedia» российской разработки, Docs Open, DocFusion, StaffWare, IBM Lotus Workflow и многие другие.
Идея использования готовой надстройки позволяет сконцентрировать внимание на потоках работ как таковых, а не на способе их реализации. Следуя этому принципу, более плавно проходит процедура реорганизации бизнес-процессов в организации (BPR), более четко ставятся задачи конкретных подразделений и исполнителей.
IBM Lotus после выпуска очередной версии пакета групповой работы Lotus Domino/Notes выпустила продукт такого класса под названием Lotus Workflow.
Этот пакет является надстройкой над Lotus Domino в том смысле, что в качестве хранилища информации о процессах и работах Workflow использует стандартные БД Lotus Notes [1]. Более того, для маршрутизации документов и работ используется встроенный в Domino механизм запуска агентов обработки документов.
В данной системе могут храниться документы и формы произвольных типов, определенных программистом или пользователем. Маршрут работы или документа может быть выбран пользователем вручную, либо может выполняться автоматическая маршрути-
Рис. 2. Настройка маршрутизации документов по условию
Средства включают в себя такие понятия, как действие пользователя (Activity), автоматическое действие (Automated Activity), выполняемое сервером на определенном этапе документооборота, подпроцесс (Subprocess), являющийся фактически процессной ссылкой (рис. 3) на другой процесс, выполняемый в определенной точке установки процессной ссылки и передающий управление после завершения на следующую после процессной ссылки точку (или действие) маршрута (рис. 4).
Рис. 3. Процессная ссылка на подпроцесс
Рис. 4. Подпроцесс закупки (ZAK)
КОНТРОЛЬ ИСПОЛНЕНИЯ И УПРАВЛЯЕМАЯ РЕАКЦИЯ
В процессе исполнения принятых в организации решений важной является своевременность исполнения порученных заданий. Контроль исполнения заданий в электронном документообороте производится программными средствами, отслеживающими наступление срока исполнения, либо других условий, при достижении которых необходим ответ исполнителя этого задания.
Если не использовать программных надстроек типа Lotus Workflow, эта процедура автоматизируется с использованием встроенных языков программирования, существующих в системе управления документами (в нашем случае - Lotus Notes). В этом случае программист сам создает управляющие кнопки, поля, агенты и представления, позволяющие реагировать на наступление определенных событий.
В Lotus Workflow эта задача решается назначением срока исполнения конкретной работы в свойствах действия пользователя (Activity Timing). При истечении срока исполнения пользователем указанной в действии работы выполняется автоматическое уведомление исполнителя с использованием встроенных в Lotus Notes средств электронной почты либо автоматический запуск предопределенного программистом агента.
Прежде чем исполнитель приступит к работе над документом, он должен «вызвать», или захватить, папку с рабочими документами. Управляемая реакция по времени настраивается для двух случаев:
1) устанавливается время, за которое потенциальный исполнитель должен «вызвать» папку с документами. В случае, если за это время ни один из потенциальных исполнителей не захватит папку, всем потенциальным исполнителям высылается почтовое сооб-
щение со стандартным уведомлением и ссылкой за папку;
2) устанавливается время, за которое работа по документу, содержащемуся в уже «вызванной» папке, должна быть выполнена. В этом случае, если исполнитель не закончил работу над документом, ему высылаются периодически напоминания по электронной почте о том, что у него на исполнении находится документ (рис. 5).
¡Basic Activity Properties HI *ll
і
Name: |Определитьавижени іе заявки OK 1 Отмена 1
Owner 1 Tasks) Forms Tinnn 9 i| Description 1
[✓ Activity duration [з houii:]
-Notify about...—
W Overdue activity
First notification h _d work minute(s) ^ I before / after duedate
Repeat every |10 _d work minute(s) 3
17 Unclaimed activity
First notification h led -bJ work minute(s) w I aftei arrival in Inbox
Repeat every |10 9 Ш. work minute(s) U
Рис. 5. Настройка управляемой реакции
ЗАКЛЮЧЕНИЕ
Создание приложений в документно-ориентированных средах в большинстве случаев требует наличие цикла документооборота. Эту функциональность можно реализовывать как встроенными средствами программирования, так и внешними программными средствами. Наибольший же эффект достигается использованием надстроек над документно-ориентированной средой, например, IBM Lotus Workflow.
ЛИТЕРАТУРА
1. Domino Workflow Developer’s Guide. IBM Corp.
Статья представлена кафедрой теоретических основ информатики факультета информатики Томского государственного университета, поступила в научную редакцию 11 мая 2003 г.