Top Banner
Docsvision Описание системы
50

Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

Aug 03, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

DocsvisionОписание системы

DocsvisionОписание системы

Page 2: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

Оглавление

Цели и видение развития системы Docsvision...........................................................................................2

Общее описание Docsvision 5.5..........................................................................................................................4

Платформа..............................................................................................................................................................4

Инструменты..........................................................................................................................................................4

Решения....................................................................................................................................................................5

Архитектура платформы........................................................................................................................................6

Компоненты серверной архитектуры......................................................................................................7

Средства масштабирования и повышения производительности..........................................9

Сервер базы данных..................................................................................................................................9

Сервер приложений...................................................................................................................................9

Сервер бизнес-процессов....................................................................................................................10

Кэш-сервер...................................................................................................................................................10

Иерархические файловые хранилища..........................................................................................10

Клиентские рабочие места и сценарии их использования........................................................11

Алгоритм работы сервиса бизнес-процессов..................................................................................12

Общее описание работы сервиса....................................................................................................12

Подробное описание этапов работы сервиса..........................................................................14

Кластеризация сервиса..........................................................................................................................17

Средства администрирования и обеспечения надежности системы.................................17

Рабочее место администратора.........................................................................................................17

Консоль настройки...................................................................................................................................18

Docsvision Resource Kit...........................................................................................................................18

Кроссплатформенные возможности......................................................................................................19

Средства разработки решения без программирования (Low-code)........................................20

Возможности создания программных решений на базе платформы................................22

Конструктор карточек...................................................................................................................................23

Конструктор ролей..................................................................................................................................26

Конструктор бизнес-процессов..............................................................................................................29

Функции.........................................................................................................................................................29

Структура процесса (шаблоны, экземпляры, функции, параметры, шлюзы).......30

Шлюзы..............................................................................................................................................................31

Представления Docsvision...........................................................................................................................32

Структура решений на базе платформы...................................................................................................34

Карточки – документы и задания............................................................................................................39

Справочники........................................................................................................................................................41

Процессы................................................................................................................................................................41

Компоненты навигации и поиска............................................................................................................42

Поддержка средств безбумажного документооборота............................................................43

Примеры решений на базе платформы Docsvision......................................................................44

Приложение «Управление документами».................................................................................................44

Средства электронного архива...............................................................................................................45

Средства автоматизации делопроизводства...................................................................................45

Средства групповой работы с документами....................................................................................46

Согласования.....................................................................................................................................................46

Заключение.................................................................................................................................................................47

Page 3: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

2

DocsvisionОписание системы

Цели и видение развития системы Docsvision

В настоящее время происходит бурное развитие и переоценка места и функций

систем электронного документооборота в корпоративной информационной

системе. Это связано, с одной стороны, с интенсивным переосмыслением

задач корпоративного управления и появлением новых более гибких методик

управления и организации бизнеса. С другой стороны, бурно развиваются

информационные технологии, превращаясь из инструментов автоматизации

традиционных процессов в инструменты цифровой трансформации бизнеса. ИТ

предлагают новые инструменты для потенциальных изменений в организации

управления, способные дать бизнесу дополнительные преимущества.

Главное изменение, которое произошло за эти годы на рынке Систем Электронного

Документооборота (СЭД) в России, можно сформулировать как переход от задач

классического делопроизводства и контроля исполнительской дисциплины

к внедрению комплексных платформ, ориентированных на цифровую

трансформацию бизнеса.

Современная платформа СЭД помимо классических задач документационного

обеспечения управления должна иметь возможность обеспечить решение

следующих задач:

} Создание корпоративного электронного архива и управление корпоративным

контентом.

} Автоматизацию управленческих бизнес-процессов, включая управление

документами, проектами и задачами.

} Реализацию безбумажного документооборота внутри организации и вне ее.

} Поддержку средств групповой работы с документами и гибких методик

управления Agile и неформализованных процессов обработки документов.

} Возможность создания на базе платформы различных приложений для

автоматизации функциональных задач, специфичных для конкретной отрасли

или для отдельного подразделения (например, договорной работы, задач

финансового, кадрового, юридического документооборота и других).

Появление таких задач и опыт их реализации привели к тому, что

фундаментально изменились требования к программным средствам для

развития корпоративной СЭД. Расширение типов решаемых задач приводит к

тому, что с системой взаимодействует абсолютное большинство сотрудников

компании, на постоянной основе в различных контекстах. С одной стороны,

для реализации этого разнообразия функций системы должны обеспечивать

необходимые инструменты, а с другой – обеспечить максимальное удобство

использования, интуитивно понятный интерфейс, разнообразие вариантов

доступа пользователей к системе.

Page 4: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

3

DocsvisionОписание системы

В связи с существенным увеличением количества процессов и задач, которые

реализуются на базе СЭД, растет и нагрузка на систему – как с точки зрения

объемов обрабатываемой системой информации (и, соответственно, объемов

хранения данных), так и с точки зрения количества одновременно работающих

пользователей и интенсивности пользовательской нагрузки. Одновременно

ужесточаются требования к производительности системы для синхронизации с

многочисленными бизнес-процессами, в которых участвуют пользователи.

Все эти изменения приводят к существенному переосмыслению функциональности

СЭД и требований к ее архитектуре.

Целью развития системы является создание инструмента, обеспечивающего

решение всего разнообразия задач обработки документов для организаций

различного масштаба – от средних предприятий до крупнейших корпораций и

госструктур. Основные направления развития системы можно сформулировать

следующим образом:

} Развитие инструментов Low-code, позволяющих включить в процесс

разработки решений не только разработчиков (но и инженеров и обычных

пользователей), обеспечивающих возможность гибкой адаптации решений

системы к требованиям конкретной организации и изменяющимся бизнес-

процессам, в том числе силами собственного персонала заказчика.

} Web-доступ, позволяющий всем категориям пользователей получить доступ к

системе и данным в любой момент времени, с любого устройства, внутри или

за пределами организации.

} Масштабируемость, позволяющая добиться неограниченного горизонтального

масштабирования системы без снижения показателей быстродействия.

} Поддержка различных видов деплоймента, позволяющего развернуть систему

как в облачной, так и собственной инфраструктуре.

} Гибкость, обеспечивающая возможность оптимизировать и снижать стоимость

владения системой.

} Интеграция, обеспечивающая возможность простой и быстрой интеграции с

внешними системами.

} Высокая доступность системы.

} Средства управления информацией, обеспечивающие возможность

автоматизации всего комплекса задач управления документами и бизнес-

процессами на базе единой платформы, соответствие всем нормативным актам

РФ, предъявляемым к системам данного класса.

Page 5: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

4

DocsvisionОписание системы

Общее описание Docsvision 5.5

Платформа Docsvision 5.5 представляет собой набор программных сервисов,

компонент и дополнительных модулей, которые позволяют реализовывать

широкий спектр интегрированных решений для всех типов задач, которые должна

автоматизировать современная СЭД.

Структурно в системе Docsvision можно выделить 3 уровня:

ПлатформаПлатформа – это набор программных компонент и сервисов, необходимых

для создания прикладных решений. Платформа включает серверные и

клиентские компоненты, программные интерфейсы (API), необходимые для

функционирования и сопровождения приложений, и возможности их интеграции

в единую систему, описанные ниже. На базе платформы могут разрабатываться

решения, дополнительные программные компоненты и модули с использованием

низкоуровневых инструментов разработки.

ИнструментыИнструменты системы включают в себя высокоуровневые Low-code конструкторы,

которые позволяют настраивать приложения без программирования или с

минимальным написанием программных скриптов. С помощью дополнительных

модулей можно реализовать функциональные расширения платформы для

использования в различных приложениях. Например, модуль потокового

сканирования. Еще один тип дополнительных компонентов – программные шлюзы

– это особые компоненты, которые упрощают реализацию сценариев интеграции

с различными прикладными системами (например, ERP-системой или оператором

ЭДО). В зависимости от типа интегрируемой системы и реализуемого сценария,

архитектура и способы реализации шлюзов могут быть различными.

Page 6: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

5

DocsvisionОписание системы

РешенияРешением или приложением на платформе является набор определенных

программных компонентов, конфигураций и настроек, обеспечивающий

автоматизацию отдельного законченного бизнес-процесса. Docsvision

ориентирована на реализацию множества разнообразных приложений для

автоматизации прикладных, управленческих и вспомогательных процессов. Типы

и классы приложений могут быть различны, от общих задач коллективной работы

с документами до сложных специализированных решений.

В состав системы входит базовое приложение – «Управление документами», в

которое входит набор базовой функциональности для автоматизации управления

документами и задачами, характерных для любой организации. Приложение

«Управление документами» является примером законченного решения с

использованием средств визуальной разработки и может быть свободно

модифицировано этими же инструментами с учетом изменяющихся потребностей

конкретной организации.

Рис 1.

Обобщенная

схема

архитектуры

платформы

Docsvision 5.5

Page 7: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

6

DocsvisionОписание системы

Архитектура платформы

Архитектура платформы Docsvision реализована в соответствии с самыми

современными подходами к реализации промышленных систем, ориентированных

на неограниченное масштабирование, обеспечивающих возможности интеграции

и удобство сопровождения системы.

Рис 2.

Архитектура

платформы

Docsvision 5.5

SQL Replica

HTTP/SOAP, WCF, REST

SQL AlwaysOn

Page 8: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

7

DocsvisionОписание системы

Платформа Docsvision 5.5 создавалась с учетом следующих архитектурных

концепций:

} Многоуровневая модель.

} Сервисная архитектура.

} Возможность работы в самом разнообразном аппаратном окружении.

} Возможность независимого масштабирования каждого компонента системы.

} Оптимальное распределение функций между отдельными сервисами для

обеспечения производительности системы и максимальной утилизации

оборудования.

} Возможность независимой установки и Upgrade каждого компонента системы.

} Возможность установки в облачной инфраструктуре.

} Возможность независимого программного расширения каждого сервиса

системы.

} Наличие полнофункционального API и WEBAPI для обеспечения возможности

программной реализации произвольных функций использования системы и

интеграционных сценариев.

Общая архитектура платформы Docsvision 5.5 показана на рисунке 2.

Компоненты серверной архитектурыВ состав платформы Docsvision 5.5 входят следующие компоненты:

} Сервисы хранения данных – осуществляют хранение всех данных системы -

как конфигурационных, так и оперативных. Реализуют низкоуровневую бизнес-

логику по обработке данных, интерпретации ролевой модели и пр. Сервисы

хранения данных включают сервис баз данных и файловые хранилища.

} Сервис баз данных реализован на базе промышленной СУБД – Microsoft

SQL Server. Обеспечивает хранение структурированных данных и

обработку части бизнес-логики. В зависимости от редакции системы и

потребностей в масштабировании может включать в себя либо один сервер,

либо использовать дополнительные сервисы масштабирования – кластер

серверов баз данных, который включает один сервер создания объектов,

произвольное количество серверов представления (более подробно

функции этих серверов описаны в разделе «Средства масштабирования и

повышения производительности»).

} Файловый сервис обеспечивает хранение неструктурированных бинарных

данных – файлов.

} Сервер приложений – основной сервис системы, реализующий прикладные

сервисы доступа к данным, разграничение прав доступа, управление

Page 9: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

8

DocsvisionОписание системы

пользовательскими сессиями и их контекстом и пр. Все взаимодействие

клиентских компонент системы и внешних приложений осуществляется через

сервер приложения, который является основным инструментом контроля

за доступом к данным. Сервер приложения реализован в архитектуре Web-

сервиса и предоставляет серверный API для доступа к функциям системы.

Сервер приложения реализует также управление файловыми хранилищами

(более подробно функции этих серверов описаны в разделе «Средства

масштабирования и повышения производительности»).

} Сервис управления бизнес-процессами (BPM) исполняет бизнес-процессы,

созданные в системе с помощью конструктора бизнес-процессов или

автоматически сгенерированными отдельными приложениями. Сервис

управляет приоритетами выполняемых процессов, запускает подпроцессы и

контролирует их синхронизацию, реализует отдельные функции процессов,

маршрутизирует задания, вносит изменения в документы, реализует функции

взаимодействия с внешними системами через функции шлюзов и пр.

} Сервер WEB клиента – реализует функции Web-клиента Docsvision и

предоставляет доступ к WEB API системы.

} Сервис полнотекстового индексирования и поиска – реализует функции

полнотекстового поиска по содержимому структурированных объектов

системы и файлов. Сервис реализован таким образом, что может использовать

различные поисковые системы в качестве поисковой машины. В настоящий

момент поддерживаются 2 реализации – поисковый сервис Microsoft SQL Server

и сервис на базе СПО Elasticsearch. Microsoft SQL Server обычно используется

в относительно небольших внедрениях, в крупных же внедрениях, как

правило, используется служба Elasticsearch, которая обеспечивает большее

масштабирование сервиса поиска и обладает большими возможностями по

обеспечению интеллектуального поиска.

} Файловый сервис обеспечивает управление расположением бинарных данных

в файловых хранилищах, перемещает файлы между различными хранилищами

согласно правилам управления хранением.

} Кэш-сервер обеспечивает временное хранение данных для минимизации

обращений к базе данных в случае повторного обращения. Кэш-сервер построен

на базе СПО Redis и является централизованным, т.е. может предоставлять

одни и те же данные для всех серверов в кластере северов приложений. При

необходимости может масштабироваться путем кластеризации.

} Сервер мобильного приложения предназначен для взаимодействия с

офлайновыми мобильными клиентами. Сервис реализует базовый протокол

взаимодействия с мобильным клиентом Docsvision «Пульс», а также содержит

механизмы настройки сценариев обмена и может быть использован для

подключения собственного мобильного приложения.

Page 10: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

9

DocsvisionОписание системы

Средства масштабирования и повышения производительностиСистема Docsvision 5.5 обеспечивает разнообразные инструменты масштабирования

и средства независимой кластеризации каждого сервиса платформы.

Сервер базы данных

Инструменты повышения производительности и масштабирования сервиса Базы

данных Docsvision 5.5 включают:

} Разделение бизнес и служебных данных. Бизнес-данные отделены от служебных

– например, от системных журналов (логов), временных данных, которые

создаются при генерации представлений и выполнении каких-то служебных

операций и т.п. Все служебные данные могут быть вынесены в сателлитные базы

данных для снижения нагрузки на основную, повышения ее быстродействия и

возможности масштабирования, кроме того, это позволяет осуществлять гибкое

управление ресурсами серверов.

} Возможность создания кластеров серверов БД с распределением

нагрузки. Кластер реализуется посредством технологии MS SQL AlwaysOn.

Отказоустойчивый и высокопроизводительный кластер позволяет распределять

нагрузку между master (запись данных) и slave (чтение данных) узлами кластера.

Для распределения нагрузки на стороне сервера применяется алгоритм

round Robin, что в совокупности с оптимизацией сервера для работы с учетом

особенностей AlwaysON, использованием технологии SQL сервера In-memory

OLTP, позволяет добиться небывалой масштабируемости.

} Возможность создания архивных баз данных позволяет разделять

структурированные данные на оперативные и архивные с возможностью

автоматического вытеснения архивных данных в отдельную БД. Политика

вытеснения может быть настроена на базе различных критериев для различных

типов документов и данных. Это позволяет не только снизить нагрузку на

оперативную базу данных, но и оптимизировать стратегии резервного

копирования и восстановления данных.

Сервер приложений

Сервер приложений Docsvision 5.5 реализован на базе Stateless архитектуры, что

позволяет устанавливать несколько серверов приложения в кластер в режиме

распределения нагрузки (Network Load Balancing, NLB), при котором запросы от

разных клиентов динамически перенаправляются на наименее загруженный узел

кластера. Для каждого узла в NLB можно назначить долю общей нагрузки, которую

он в состоянии обработать, либо задать равномерное распределение нагрузки

по узлам. Такого рода кластер позволяет снизить нагрузку на отдельный сервер

приложений при работе большого количества конкурентных пользователей,

что позволяет осуществлять стратегию горизонтального масштабирования и

постепенно наращивать аппаратную мощность кластера сервера приложений.

Page 11: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

10

DocsvisionОписание системы

Сервер бизнес-процессов

Как и в случае сервера приложений, кластеризация сервиса управления

процессами позволяет выполнить горизонтальное масштабирование, основной

задачей которого является распределение вычислительной нагрузки обработки

процессов на несколько физических серверов. Кластер сервиса управления

процессами организуется путем инсталляции нескольких независимых

экземпляров сервиса управления процессами. Из них один выделяется как

основной – именно он будет заведовать работой остальных узлов и распределять

между ними обработку процессов, а также отвечать за запуск новых экземпляров.

Для каждого узла можно задать долю от общего количества процессов, которую

он будет обрабатывать. Процессы распределяются по узлам целиком – то есть

каждый процесс от начала до конца выполняется на одном узле кластера.

Кэш-сервер

Дополнительное повышение производительности системы и возможности

масштабирования дает использование дополнительного кэш-сервера в системе.

Кэш-сервер реализован с использованием нереляционной In-memorу базы данных

Redis и позволяет существенно сократить количество обращений к сервису базы

данных за счет временного хранения данных на дополнительном кэш-сервере

для повторного использования. Сервер дает возможность построения единого

сервера кэширования для кластера серверов приложений, обеспечивая быстрый

доступ к данным, переиспользование их на различных узлах кластера и снижение

нагрузки на БД. Кэш-сервер также может горизонтально масштабироваться путем

создания кластера серверов.

Иерархические файловые хранилища

Сервис поддержки распределённого файлового хранилища сервера приложений

позволяет хранить файлы вне основной базы данных на различных внешних

физических устройствах – во внешней по отношению к Docsvision SQL базе

данных или на различных файловых серверах, в облаке или специализированном

хранилище. В системе реализованы провайдеры доступа к хранилищам файлов:

} Локальной БД Docsvision на основе binary полей таблиц.

} Встроенный в БД Docsvision на основе FileStream.

} Внешней БД MS SQL на основе binary полей таблиц.

} Внешней БД M SSQL на основе FileStream.

} Провайдер произвольного внешнего файлового хранилища.

Механизм позволяет гибко управлять правилами размещения файлов в

хранилищах и контролировать степень заполнения хранилищ, что обеспечивает

возможность не только распределить нагрузку между различными хранилищами,

но и оптимизировать стоимость владения электронным архивом. Подобная

реализация файлового хранилища позволяет также оптимизировать стратегии

резервного копирования и восстановления данных.

Page 12: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

11

DocsvisionОписание системы

Клиентские рабочие места и сценарии их использованияВ системе сегодня четыре типа клиентских рабочих мест:

} Web-клиент – основное клиентское рабочее место. Реализует все базовые

сценарии взаимодействия пользователя с системой, предоставляет доступ

к системе через интернет-браузер без необходимости установки на рабочее

место дополнительных компонент. Наличие адаптивной верстки позволяет

пользователям работать с Web-клиентом с любого устройства, будь то

настольный компьютер, ноутбук, планшет или телефон, на любой платформе:

Microsoft Windows, Linux, Mac OS X, Android, iOS. Необходим лишь один из

наиболее распространенных Web-браузеров (Microsoft Internet Explorer,

Google Chrome, Apple Safari, Edge, Яндекс.Браузер) и доступ к сети интернет.

Взаимодействие с сервером приложений осуществляется по протоколам http

и https.

} Windows-клиент представляет собой приложение, устанавливаемое на

клиентский компьютер. Обладает несколько большими возможностями именно

для реализации специализированной сложной функциональности, поэтому

рекомендуется использовать его для выполнения подобных операций –

например, операций сканирования штрихкодов документов ручным сканером,

использования других функций взаимодействия с тем или иным аппаратным

обеспечением, функции потоковой обработки документов и пр. Windows клиент

необходим также для выполнения функций настройки системы с помощью

конструкторов. Windows-клиент реализован в привычном для пользователя

«Outlook–подобном» стиле интерфейса.

} Почтовый клиент реализует мобильное рабочее место СЭД непосредственно

внутри программы почтового клиента. Почтовый клиент ориентирован

на выполнение простейших операций по обработке заданий и участия в

согласованиях без использования электронной подписи. Доставка информации

до пользователя осуществляется с помощью обычного электронного

письма, которое формируется и отправляется серверной частью модуля. При

завершении задания пользователем формируется ответное письмо, которое

обрабатывается сервером и результаты исполнения задания помещаются в

систему.

Почтовый клиент обеспечивает следующие преимущества:

} Работа с заданиями непосредственно в почтовом клиенте, независимо от

наличия или отсутствия связи с СЭД.

} Не требуется установка какого-либо дополнительного ПО, кроме почтовой

программы.

} Основная функциональность не зависит от операционной системы,

почтового клиента и используемого почтового сервера.

} Не требуется длительное обучение сотрудников, сообщения понятны и

имеют необходимое количество пояснений.

Page 13: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

12

DocsvisionОписание системы

} Мобильное рабочее место «Пульс» представляет собой мобильное приложение,

которое обеспечивает доступ к основным операциям с документами и

поручениями с мобильных устройств – смартфонов и планшетов на базе

ОС Android и iOS. Одно из основных преимуществ, которые предоставляет

мобильное приложение Docsvision – это работа в системе даже при отсутствии

постоянного соединения с сервером. Необходимые документы загружаются

прямо на устройство, доступны для работы в режиме offline, а все результаты

проделанной работы по документам после восстановления соединения

попадут на сервер для дальнейшей обработки. Мобильный клиент содержит

целый ряд настроек, которые позволяют адаптировать визуальный интерфейс к

требованиям конкретного заказчика и включить функции работы на мобильном

клиенте в самые различные решения и приложения, реализованные на базе

Docsvision 5.5.

Помимо перечисленных видов клиентов есть еще ряд клиентских приложений,

реализующих специализированные сценарии.

} Рабочее место администратора – клиент, предназначенный для Администратора

системы. Он, как и Windows-клиент, предоставляет доступ ко всем функциям

системы, а также ко всем инструментам настройки и конфигурирования

системы. Для запуска Рабочего места Администратора Docsvision требуется

установка его компонент на рабочую станцию пользователя.

} Панель инструментов для Microsoft Office. Модуль предназначен для быстрого

создания карточек документов и заданий Docsvision напрямую из документов

Microsoft Office, созданных в приложениях Microsoft Word, Microsoft Excel и

Microsoft Outlook. Модуль представляет из себя надстройку для приложений

MS Office, созданную с использованием технологии Microsoft Visual Studio 2010

Tools for Office (VSTO).

} Личный помощник представляет собой вспомогательное приложение, которое

позволяет пользователю получать информацию о действиях, которые ему

необходимо выполнить, без необходимости запускать клиентское приложение.

Приложение сворачивается в области уведомлений Windows и при обнаружении

события выдает всплывающую подсказку аналогично подсказке о получении

новых писем в MS Outlook.

Алгоритм работы сервиса бизнес-процессов

Общее описание работы сервиса

Сервис Workflow ведет групповую обработку процессов: при наличии в

системе нескольких активных процессов (их поиском занимается часть сервиса

Workflow, называющаяся детектором активных процессов) часть из них будет

обрабатываться параллельно; обрабатывающиеся параллельно процессы

образуют группу обрабатываемых процессов. Пока сервис обрабатывает эти

процессы, не вошедшие в группу активные процессы ожидают обработки в

очереди процессов.

Page 14: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

13

DocsvisionОписание системы

Число параллельно обрабатываемых процессов, то есть число процессов в группе

обрабатываемых процессов, определяется в настройках сервиса Workflow.

Процессы в группе обрабатываемых процессов объединяет только то, что в какой-

то момент времени они одновременно обрабатываются сервисом Workflow. Время

начала и окончания обработки для каждого из этих процессов индивидуальны и

никак не связаны с аналогичными параметрами остальных процессов группы. Таким

образом, состав группы обрабатываемых процессов динамически изменяется.

Процессы из группы обрабатываются за разное время; при завершении обработки

одного из процессов его место в группе занимает процесс из очереди ожидающих

обработку.

Каждому процессу выделяется на обработку определенное время – квант

времени, длительность которого в общем случае зависит от приоритета процесса.

Выделение на обработку процесса кванта времени не означает, что процесс обязан

исполниться именно за этот период: на исполнение может потребоваться как

меньше, так и больше времени. Если процесс не успел исполниться за отведенный

квант времени, он возвращается в очередь процессов, ожидающих обработки.

Время исполнения каждой из составляющих процессы функций, в отличие

от кванта времени, определяется в настройках сервиса и одинаково для всех

функций. Если какая-то функция выполняется неприемлемо долго, содержащий

ее процесс объявляется превысившим таймаут (но слишком долго работающая

функция при этом продолжает выполняться до естественного или принудительного

завершения).

Теоретически возможна ситуация, в которой все или почти все процессы из группы

обрабатываемых будут содержать неприемлемо долго работающие функции и

тем самым препятствовать началу исполнения других активных процессов. Чтобы

избежать этого, в настройках сервиса задается максимально допустимое число

процессов, одновременно превысивших таймаут. Если это число превышено, то

рабочий процесс принимает решение о перезагрузке.

Таким образом, в обработке процессов сервисом Workflow можно выделить

следующие этапы:

Рис. 3.

Схема работы

сервиса Workflow

f1

f2

f3

...

fk

f1

...

f1

f2

...

fm

f1

f2

f3

...

fn

(..)

Page 15: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

14

DocsvisionОписание системы

} Поиск всех процессов в системе, активных в текущий момент времени.

Составление списка активных процессов. Формирование из объектов

полученного списка процессов очереди процессов, ожидающих обработки.

} Выборка процессов из очереди. Отправка на обработку (освободившееся место

в группе обрабатываемых занимает процесс, первый в очереди процессов).

Подробное описание этапов работы сервиса

Поиск активных процессов

На этом этапе детектором активных процессов проводится поиск всех процессов

в системе, активных в текущий момент времени. Работа детектора является

циклической, пауза между его включениями указывается в настройке Период

поиска процессов (сек). По умолчанию этот интервал равен 10 секундам.

Период поиска процессов (сек) имеет смысл уменьшать, если не устраивает

скорость поступления новых активных процессов на исполнение. Увеличить

значение этого параметра можно, если в системе очень большое количество

реально обрабатывающихся процессов (существенно большее, чем размер

группы обрабатываемых процессов) или наблюдается значительная нагрузка на

сервер баз данных (например, блокировки), вызванная работой процедур поиска

активных процессов.

Результатом работы детектора является список активных процессов, в котором

процессы располагаются в порядке их обнаружения. Обрабатываться процессы

сервисом Workflow будут в другом порядке.

В список активных процессов попадают:

} Найденные в одном из предыдущих циклов поиска и в данный момент уже

обрабатывающиеся процессы.

} Найденные в одном из предыдущих циклов поиска, в данный момент стоящие в

очереди на обработку.

} Новые активные процессы, появившиеся в системе со времени проведения

предыдущего поиска.

В очередь на обработку ставятся активные, готовые к обработке процессы,

которых нет ни в очереди, ни в группе обрабатывающихся процессов.

Постановка процессов в очередь

Для постановки процесса в очередь на обработку список найденных активных

процессов сравнивается со списками процессов, находящихся в ожидании

обработки (очередью процессов) и уже обрабатывающихся (группой

обрабатывающихся процессов).

Page 16: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

15

DocsvisionОписание системы

Для каждого найденного нового активного процесса рассчитывается число очков,

характеризующее место в очереди процессов, в которое его нужно поставить.

Чем это число больше, тем ближе к началу очереди должен быть поставлен

процесс; только что обнаруженный процесс может стать в очередь ближе к её

началу, чем другой процесс, уже давно находящийся в очереди. Таким образом,

очередь процессов является динамической, и в неё то и дело могут вклиниваться

новые процессы.

Очки выделяются таким образом, чтобы любой процесс, даже с самым низким

приоритетом, когда-нибудь попал на обработку:

Число очков = число секунд с момента последней обработки процесса + бонус/

малус за приоритет + бонус для никогда не обрабатывавшихся процессов.

Обработка группы процессов

Сервис Workflow одновременно может обрабатывать столько процессов, сколько

указано в его настройках в поле Число процессов в пакете (по умолчанию 20).

Число процессов в пакете изменять не рекомендуется: увеличение в общем

случае не отразится на производительности; уменьшать это число можно только

после тщательного анализа нагрузки.

Квант времени, выделяемый процессу на обработку, высчитывается исходя из

приоритета этого процесса и значения поля Время обработки процесса (сек).

Например, для процесса с обычным приоритетом квант времени равен значению

этого поля, для процесса с наивысшим приоритетом — значению поля, умноженному

на 2, для процесса с самым низким приоритетом — значению поля, деленному на

2. Таким образом, чем выше приоритет процесса, тем больше времени выделяется

на его обработку.

Значение параметра Время обработки процесса (сек) имеет смысл уменьшать,

если процессы необходимо обрабатывать максимально часто. Следует учесть при

этом, что уменьшение этого значения приведет к снижению эффективность работы

за счет того, что при меньшем времени работы процесса его данные придется

загружать чаще.

Одномоментно в каждом процессе обрабатывается только одна функция; при

этом за выделенный этому процессу квант времени может выполниться несколько

функций. На выполнение каждой функции отводится определенное время,

указываемое в поле Время ожидания выполнения функции в потоке (сек). Если

время исполнения какой-то функции в три раза превысило указанное значение, то

процесс объявляется превысившим таймаут и приостанавливается по ошибке (но

слишком долго работающая функция при этом продолжает выполняться!).

Максимально допустимое число процессов, одновременно превысивших таймаут,

указывается в поле Предел таймаутов функций. Если это число превышено, то

рабочий процесс (ExecLogic) принимает решение о перезагрузке; при этом дается

1 минута на завершение других, нормально работающих процессов. В течение

этой минуты новые процессы на обработку не поступают.

Page 17: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

16

DocsvisionОписание системы

Пулы шлюзов и сессий. Режим изоляции

На всю группу обрабатываемых процессов выделяется ограниченное число

экземпляров шлюзов одного типа и сессий с одинаковыми настройками

подключения. Доступное число таких экземпляров шлюзов указывается в поле

Размер пула шлюзов, а число сессий — в поле Размер пула сессий; по умолчанию

обе эти величины равны 10, изменять их не рекомендуется. Входящие в группу

процессы не могут использовать большее, чем указано, количество экземпляров

шлюзов и сессий. Таким образом, возможна ситуация, когда один экземпляр шлюза/

одну сессию использует несколько процессов и при этом один из процессов

тормозит исполнение всех остальных.

Если установлен флажок Режим изоляции процесса, то каждому обрабатываемому

процессу будет выделяться личная сессия и личный набор шлюзов, которые на

время обработки процесса будут находиться в его эксклюзивном использовании.

Режим необходим для того, чтобы задержки и блокировки, возникающие в сессии/

шлюзе из-за использования их неким процессом, по возможности (зависит от

реализации шлюза) не влияли на другой процесс. Включать режим рекомендуется,

если наблюдается групповое завершение функций.

В режиме изоляции процессов нельзя отредактировать параметры Размер пула

шлюзов и Размер пула сессий – они принимаются равными параметру Число

процессов в пакете.

Активизация функции по наступлению определенного события

Некоторые функции шлюзов (например, мониторинг, задание и др.) должны

отрабатывать только после наступления некоторого события. Таким функциям

предоставлена возможность сообщить шлюзу, какого именно события она ожидает:

изменения конкретной карточки, завершения подпроцесса, разблокировки

карточки, появления нового сообщения в почтовом ящике, изменения карточки

определенного типа, появления файла в папке и т. д.

Каждая такая функция активного процесса регистрируется шлюзом как

«подписанная на событие». Целью такой «подписки» является стремление к тому,

чтобы большинство таких функций были полностью обработаны и завершены не

более чем за два срабатывания.

Проверяет, наступило ли запланированное событие, не бизнес-процесс,

содержащий такую функцию, а шлюз, который делает это организованно и сразу

для всех функций.

Таким образом, теоретически возможна ситуация, когда из-за отсутствия нужных

событий в системе не будет работать ни одна функция и, следовательно, ни один

процесс. Такое возможно, например, ночью.

Page 18: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

17

DocsvisionОписание системы

Кластеризация сервиса

Система Управление процессами может распределять нагрузку по обработке

бизнес-процессов между несколькими компьютерами (проводить кластеризацию).

Для каждого сервиса, входящего в кластер, указывается доля обрабатываемых

процессов, что позволяет сбалансировать нагрузку в зависимости, к примеру,

от характеристик сервера. Например, если для одного сервиса указана доля 3, а

второго – 4, то количество обрабатываемых каждым сервисом процессов будет

соотноситься как 3:4 (то есть приблизительно 43% процессов будет обрабатывать

первый сервис, 57% – второй). В случае если один из сервисов не запущен,

обработку «его» доли процессов ведут другие активные сервисы.

Средства администрирования и обеспечения надежности системыИнструменты администрирования позволяют администратору системы:

} Выполнять регламентное обслуживание компонент системы.

} Осуществлять диагностику и исправление произошедших сбоев.

} Выполнять настройку функциональности системы.

} Управлять доступом к системе.

} Осуществлять разработку новых карточек и компонент системы.

Платформа имеет широкий набор средств администрирования как ядра

платформы, так и различных ECM и BPM сервисов.

Рабочее место администратора

Рабочее место администратора, позволяя работать со всеми конструкторами

платформы, предоставляет возможности настройки функциональности системы, а

также содержит инструменты общего администрирования.

Рис. 4.

Пример

распределения

бизнес-процессов

в кластере

Workflow

Page 19: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

18

DocsvisionОписание системы

Используя модуль, администратор системы может:

} Настраивать экранные формы карточек, их жизненный цикл, бизнес-логику.

} Настраивать маршруты согласований документов.

} Настраивать права доступа к объектам системы по различным политикам:

дискреционной, ролевой, мандатной.

} Настраивать поисковые запросы, представления и отчеты.

} Настраивать структуру и формы справочных данных.

} Разрабатывать бизнес-процессы.

} Управлять сессиями и блокировками.

} Настраивать программные компоненты приложений Windows клиента для

распространения.

Рабочее место администратора также позволяет просматривать журнал работы

системы в котором отражаются все операции, выполняемые пользователями,

возникающие ошибки и системные сообщения. Журнал обладает фильтром,

позволяющим быстро найти нужную информацию.

Консоль настройки

Консоль настройки предназначена для управления настройками сервера, базы

данных, файлового сервиса, клиентской части, назначения пользователям прав

доступа к некоторым объектам Docsvision, настройки журнала сервера, а также

конфигурирования BPM-сервисов и полнотекстового индексирования.

Кроме этого, консоль настройки содержит инструментарий для распространения

обновлений на рабочие места пользователей, механизмы для подключения

серверных расширений (дополнительных модулей), и имеет свой журнал,

протоколирующий все выполняемые действия.

Консоль настройки представляет из себя отдельное приложение, все настройки

хранятся в системном реестре.

Docsvision Resource Kit

Docsvision Resource Kit – пакет служебных утилит для администратора и

разработчика платформы Docsvision. В состав пакета входят:

} DVCardManager – создание и редактирование описаний карточек и библиотек,

выполнение низкоуровневых операций с базой данных.

} DVExplorer – выполнение низкоуровневых операций с данными (просмотр и

редактирование) и сервисных операций (блокировки, права доступа, …).

Page 20: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

19

DocsvisionОписание системы

} SearchUtil – позволяет интерпретировать XML поискового запроса в SQL

запрос.

} ViewUtil – Утилита для трансляции представлений из внутреннего формата

XML в код SQL.

} TOStaffLoad и TOPartnersLoad – утилиты, позволяющие загружать справочники

сотрудников и контрагентов.

} ChangeAccount – замена учетных записей у сотрудников.

} NavigatorLogParser – Утилита для чтения из лога Навигатора параметров

быстродействия по основным клиентским операциям.

} LogViewer – Просмотр выгруженного из ДВ системного Журнала с возможностью

фильтрации данных по различным параметрам.

В Docsvision 5.5 переработана система инсталляции, update и накопительных

изменений. Дистрибутив системы Docsvision 5.5 включает набор дистрибутивов

следующих компонент системы:

Эти компоненты могут устанавливаться независимо друг от друга. Еще важнее, что в

них независимо могут вноситься изменения, реализоваться новые версии каждого

отдельного модуля и фиксироваться обнаруженные ошибки. В случае внесения

изменений в отдельный компонент системы он может быть переустановлен без

необходимости переустановки других. Это позволит существенно упростить и

снизить риски процессов эксплуатации системы в организации.

Кроссплатформенные возможностиВ версии Docsvision реализован целый ряд архитектурных изменений, которые

позволяют использовать систему в различных окружениях – в частности,

реализована поддержка различных механизмов, базирующихся на технологиях

Open Source.

Ядро платформы

Сервер приложений, утилиты

администрирования

Сервер бизнес-процессов

Web-клиент Базовые объекты

Базовые справочники, конструкторы и утилиты

Управление документами

Компоненты и конфигурации типового

приложения системы

Windows-клиент

Компоненты необходимые для

развертывания Desktop клиентов

Конструкторсогласований

Отдельный конструктор, управляющий

процессами согласования

Page 21: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

20

DocsvisionОписание системы

Прежде всего, это касается возможности использовать в качестве сервера базы

данных PostgreSQL.

Помимо этого, система может использовать поисковый Open Source сервис

Elasticsearch и нереляционную высокопроизводительную базу данных с открытым

кодом Redis, на базе которой реализован сервис кэширования.

Основным клиентским рабочим местом системы Docsvision сегодня является

Web-клиент, который работает на всех наиболее распространенных сегодня web-

браузерах, включая редакции для Linux.

Средства разработки решения без программирования(Low-code)

Одно из преимуществ системы Docsvision – наличие средств визуальной

кастомизации и разработки приложений без программирования. В системе

реализованы следующие интерактивные конструкторы и инструменты,

позволяющие вносить изменения в различные элементы конечного приложения,

создавать приложения с нуля или на основе готовых шаблонов без

программирования:

} Конструкторы поисковых запросов и представлений – позволяют

формулировать формы атрибутивных поисковых запросов и формат групповых

табличных представлений документов.

} Конструктор карточек – обеспечивает детальную настройку карточек

документов и заданий и включает в себя:

} Конструктор состояний документов – позволяет описывать логику

жизненного цикла обработки документа и заданий: его состояния;

последовательность переходов между состояниями; доступность тех или

иных операций по обработке документа в ходе жизненного цикла.

} Конструктор разметок – обеспечивает формирование внешнего вида

карточки, бизнес-логики ее обработки. Для одного документа может

быть разработано множество форм представления, оптимизированных

для выполнения тех или иных действий для различных пользователей на

различных этапах жизненного цикла. Конструктор позволяет настраивать

разные виды дизайна разметок для разных форм-факторов и реализовывать

адаптивную верстку для компьютера, планшета или смартфона.

} Конструктор web-разметок – обеспечивает возможность настройки web-

интерфейса, внешнего вида карточек и документов в web-интерфейсе.

} Конструктор ролей – позволяет настраивать динамические роли,

формируемые по содержимому документа, положению сотрудника в

Page 22: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

21

DocsvisionОписание системы

оргструктуре организации и другим контекстам, определяют доступный

пользователю интерфейс документа и доступные операции по его

исполнению, а также права доступа к документу.

} Конструктор скриптов – обеспечивает возможность программного

расширения различной бизнес-логики в карточках.

} Конструктор справочников – позволяет настраивать справочники, включая

сложные иерархические, их формы заполнения и представления, бизнес-логику.

} Конструктор бизнес-процессов – визуальный графический дизайнер

позволяет описывать структуру процесса, последовательность выполнения

автоматических этапов и этапов, требующих ручной обработки.

} Конструктор согласований – инструмент визуальной параметрической

настройки маршрутов согласования документов. Конструктор позволяет

настраивать маршруты как администраторам системы, так и пользователям.

} Модули интеграции и шлюзы – это дополнительные программные компоненты

для взаимодействия с внешними информационными системами. Система

поддерживает возможности интеграции с такими системами как сервисы

электронной почты, файловый обмен, 1С, Microsoft SharePoint. Система также

поддерживает модуль интеграции с операторами ЭДО, в частности системой

Диадок. Модули интеграции позволяют настраивать сценарии взаимодействия

с внешними системами без программирования, а также реализовывать

различные программные расширения.

} Различные дополнительные модули, которые могут использоваться при

создании конкретных решений и позволяют существенно сократить

трудоемкость их реализации. Например, модуль межфилиального обмена и

модуль потокового ввода.

Конструкторы позволяют не только формировать структуру решений без

программирования, но и включают возможности программного расширения в

случае недостаточности средств конструирования. Разные конструкторы имеют

разные инструменты программных расширений, однако для их реализации не

требуется дополнительных инструментов разработки – достаточно разработать

простые скрипты.

Рис. 5.

Редактор скриптов

в конструкторе

карточек

позволяет

изменять логику

обработки для

различных

действий

пользователя

Page 23: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

22

DocsvisionОписание системы

Возможности создания программных решений на базе платформы

В Docsvision имеются возможности как программного расширения решений,

созданных средствами визуального конструирования, так и создания программных

решений путем программирования «с нуля». Для этого платформа предлагает

разработчикам программный интерфейс (API) для реализации самых разных

задач, таких как:

} Включение функций взаимодействия с данными, хранящимися в Docsvision,

в различные внешние приложения. API позволяет реализовывать самые

разнообразные сценарии создания, получения информации о документе,

изменения его данных и состояний, выполнения различных процедур его

обработки, вплоть до изменения прав доступа или структуры метаданных – все,

что доступно пользователю и администратору через визуальный интерфейс

системы. Доступность тех или иных действий с документами определяется

правами учетной записи, под которой внешнее приложение аутентифицируется

в системе. В частности, функции взаимодействия с Docsvision необходимы при

создании различных специализированных модулей интеграции с различными

приложениями корпоративной информационной системы.

} Создание специализированных карточек и справочников без использования

конструкторов. В отдельных случаях возникает необходимость создания

карточек документов и других объектов, справочников со специфическими

требованиями, которые не реализовать с использованием конструкторов. На

этот случай имеется API и инструменты, с помощью чего можно разработать

логическую структуру соответствующих объектов и разработать программные

компоненты пользовательского интерфейса и бизнес-логики. При этом данные

карточки и справочники встраиваются в систему и доступны для общего поиска,

построения навигации и представлений, обработки бизнес-процессами и пр.

} Создание серверных расширений. Имеется возможность реализовать различные

расширения, которые реализуют серверную логику, инициализируемую либо

клиентским приложением (например, действий, требующих привилегий,

не доступных пользователю, инициализирующему данную операцию, или

различные сценарии пакетной обработки), либо тем или иным сервисом.

} Создание элементов управления карточек, которые используются в

конструкторе карточек для реализации специализированных сценариев.

Например, при разработке какого-либо дополнительного справочника может

понадобиться элемент управления, который реализует функции, отличные от

стандартного элемента работы со справочниками.

} Создание функций бизнес-процессов. Есть возможность не только разрабатывать

скрипты для выполнения функций бизнес-процесса, но и создавать

дополнительные повторно используемые функции, необходимые при реализации

проекта, которые могут быть использованы в других аналогичных проектах.

} Создание программных шлюзов. Есть возможность создавать программные

шлюзы для организации процессов взаимодействия с различными внешними

Page 24: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

23

DocsvisionОписание системы

сервисами и приложениями на основании спецификации Docsvision. Разработка

шлюза может быть полезна в том случае, если в организации планируется

реализация множества процессов, в которых присутствует обмен информацией

между приложениями и системой Docsvision, в этом случае реализация сценариев

интеграции с помощью шлюза требует гораздо меньших затрат на разработку.

Помимо этого, Docsvision обеспечивает URL-адресацию к любому объекту системы

и импорт – экспорт практически любого объекта и элемента конфигурации

системы в формате XML, что позволяет сильно упростить реализацию сценариев

интеграции и предоставления данных, хранящихся в Docsvision, во внешние

информационные системы.

Конструктор карточекВ Docsvision есть несколько возможностей конструировать информационную

структуру и визуальный интерфейс карточек. Низкоуровневый визуальный

инструмент Менеджер карточек (CardManager) позволяет создавать новые типы

документов, описывать их информационную структуру и определять ограничение

на значения полей на уровне базы данных.

Более высокоуровневый инструмент – конструктор карточек – позволяет

формировать и информационную структуру, и внешний интерфейс определенного

вида1 карточек. Содержит набор элементов управления как общего назначения,

так и специализированных. Конструктор карточек позволяет также подключать

различные программные обработчики (скрипты) к операциям, которые выполняет

пользователь, и событиям. Для этого в составе конструктора карточек предусмотрены

специализированные инструменты: конструктор разметок, конструктор web-

разметок, конструктор состояний, конструктор скриптов и конструктор ролей.

Рис. 6.

Низкоуровневый

инструмент

CardManager

позволяет

описывать

информационную

структуру

документов

1 Тип карточки – это низкоуровневый объект, который содержит в себе описание структуры данных (схему), с помощью которой карточка данного типа хранится в базе данных. Например, в комплект поставки платформы Docsvision изначально поставляются два типа карточек: Документ и Задание. Вид – это разновидность карточки определенного типа. Настраивается при помощи справочников и конструкторов и не изменяет структуры Базы данных.

Page 25: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

24

DocsvisionОписание системы

Например, в приложении «Управление документами» определен тип «Документ» с

видами «Входящий», «Исходящий» и т.д.

Для одного документа могут быть сконструированы несколько интерфейсов

обработки различными пользователями, на различных стадиях жизненного цикла

документа.

Каждая карточка имеет жизненный цикл, в ходе которого документ проходит

разные этапы обработки (разработка, согласование, утверждение, действующий,

архивный). На каждом этапе приложение должно предоставлять разным

пользователям разные права по его обработке и модификации. На разных этапах,

например:

} Изменения могут вноситься в основной текст файла документа, только в

протокол разногласий или вноситься не могут.

} Могут быть доступны для чтения и редактирования те или иные поля

(метаданные) документа.

} Доступны для выполнения те или иные операции.

Соответственно необходим разный интерфейс для доступа к обозначенным

действиям. Как правило, жизненный цикл документа не сводится к простой

линейной последовательности этапов обработки. Схема в реальной жизни может

быть сложной, включать возвраты, циклы обработки и даже условные ветвления

(если обработка документа развивается по различным сценариям).

В системе Docsvision имеется отдельный конструктор, позволяющий описывать

жизненный цикл документа и операции, доступные на каждом этапе жизненного

цикла – Конструктор состояний.

Замечание!

Жизненный цикл документа описывает не процесс его обработки, а изменение

состояний документа в процессе его обработки.

Рис. 7.

Конструктор

разметок

Page 26: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

25

DocsvisionОписание системы

В приложениях с документом могут выполняться те или иные действия, с

разнообразной логикой обработки. Простейшая логика связана с правилами

заполнения полей документа, однако большое количество сценариев обработки

документа невозможно заранее предугадать. Для их реализации Docsvision

поддерживает возможность программных расширений. Можно использовать

специализированный API для доступа и управления данными документа.

Программа обработки может быть связана с любым событием, происходящим с

документом — его открытием, модификацией поля или файла. Для реализации

программной бизнес-логики используется Конструктор скриптов.

Особая группа логики обработки информации в документе связана с

синхронизацией данных из полей содержимого файла (например, ячейки Excel

или поля Word) документа и его атрибутами. Для этого в Docsvision реализован

специальный инструмент разметки офисных документов.

Конструктор карточек позволяет определять несколько визуальных представлений

документа и различную логику обработки, которая будет доступна пользователям в

зависимости от этапа жизненного цикла документа и роли пользователя в отношении

конкретного экземпляра документа (про роли смотри соответствующий раздел).

Рис. 8.

Конструктор

состояний

Рис. 9.

Конструктор

скриптов

Page 27: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

26

DocsvisionОписание системы

Карточка задания обеспечивает возможность назначения задания пользователю

или группе пользователей. Она может создаваться пользователем вручную,

автоматически генерироваться в рамках процесса или создаваться в рамках

приложения (например, задание на исполнение резолюции в приложении,

автоматизирующем задачи делопроизводства). Карточка задания может выступать

контейнером для документа или нескольких документов, которые должны быть

обработаны в процессе исполнения задания, но может и не содержать документов.

Возможности настройки карточки задания не уступают возможностям настройки

карточки документа. Основное отличие в том, что у задания есть предопределенные

этапы жизненного цикла, а также в задании реализована некая бизнес-логика

(например, обработка замещений, делегирование, напоминания).

Конструктор ролей

Важное отличие приложений Docsvision от других привычных пользователю

приложений (например, ERP-систем) в том, что документ в системе Docsvision —

это часто объект с очень сложным и длительным жизненным циклом. Например,

документ вида Договор — разрабатывается, согласовывается, утверждается,

передается контрагентам, по нему ведется активная работа, к нему накапливаются

приложения, создаются дополнительные документы, он пролонгируется,

архивируется, списывается и пр. Естественно, логика его обработки и права

доступа к данным документа зависят от этапа его обработки. При этом, правила

обработки на конкретном этапе жизненного цикла конкретным пользователем

зависят от самых разных параметров: например, от должности пользователя,

наличия тех или иных данных в самом документе (или связанных с ним), и даже

информации, хранящейся во внешних по отношению к СЭД системах.

Вот пример такого сложного правила, определяющего право вносить изменение

в содержимое договора:

«Договор доступен для редактирования руководителю отдела и его заместителям,

а также всем сотрудникам, которые перечислены в списке согласующих лиц

в карточке договора, в том случае если задание на согласование документа

находится в состоянии «в работе», «документ не утвержден», и в учетной системе

нет записи о регистрации соответствующего договора».

Для операций работы с документом может быть описано большое количество

подобных правил. Это приводит к тому, что при создании приложения традиционным

способом приходится программировать логику обработки документа, учитывая все

эти факторы – этап обработки, состояние документа, роль пользователя, атрибуты

документа и связанных с ним, внешние факторы и пр., которые определяют

правила обработки документов, доступность тех или иных элементов интерфейса,

возможность чтения и модификации данных.

При внедрении каждого конкретного процесса необходимо учитывать правила

работы с документами. При традиционном подходе это приводит к необходимости

использования кодирования и низкоуровневой разработки в большом объеме,

а любые программные доработки – это не только удорожание проекта, но и

увеличение рисков и потенциальных проблем при внедрении.

Page 28: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

27

DocsvisionОписание системы

Для устранения этих проблем в Docsvision реализована уникальная контекстно-

ролевая модель, которая позволяет параметрически настраивать интерфейс,

логику обработки и безопасность документа для конкретного сценария бизнес-

процесса без использования программирования. Для этого используется

конструктор ролей Docsvision.

Нужно сказать, что понятия «роли» – например, в операционной системе и в

контекстно-ролевой модели – отличаются. Если традиционная роль (например,

администратор системы) – это по сути статическая группа, членам которой

предоставлены определенные специфические полномочия в системе (возможность

выполнять функции администрирования), то в Docsvision роль определяется

динамически, в частности, по отношению к конкретному экземпляру документа.

При этом для роли определяются права доступа к объекту, интерфейс для

обработки объекта и доступные бизнес-функции для его обработки.

Таким образом, механизм контекстно-ролевой модели Docsvision позволяет решать

одну из важнейших проблем современной СЭД – оптимизацию и облегчение

интерфейса пользователя при выполнении тех или иных действий.

Настройка ролевой модели включает в себя три шага:

} Настройка ролей (или контекстов обработки) для конкретного типа и вида

документа.

} Определение операций обработки документа и данных, доступных для данной

роли.

} Связывание того или иного интерфейсного представления, настроенного в

конструкторе карточек, с конкретной ролью и состоянием документа.

Настройка ролей для вида документа производится в интерфейсе Конструктора

ролей.

Конструктор ролей позволяет описать множество ролей (контекстов

использования) для того или иного вида документа.

Каждая роль – это набор условий, объединённых в комбинации по и/или.

Рис. 10.

Конструктор

ролей позволяет

параметрически

описывать

контексты

использования тех

или иных объектов

приложения на

базе платформы

Docsvision

Page 29: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

28

DocsvisionОписание системы

Каждое условие – это логическое выражение (параметр–операция–значение),

которое проверяется на истинность при обращении к конкретному экземпляру

карточки.

Производится проверка актуальности всех ролей для текущего контекста

(пользователь – экземпляр документа), настроенного для данного вида

карточки. В случае если все (И) или одно (ИЛИ) выражение истинно, данная

роль актуализируется в текущем контексте. Далее, в зависимости от настроек

конструктора карточек, определяется, какой интерфейс необходимо показать

пользователю в текущем контексте, а также какие данные и операции документа

доступны пользователю в текущем контексте.

Сегодня в системе используются 3 типа параметров:

} Параметры, которые определяют контекст текущего пользователя. Например

– «текущий пользователь указан в каком-то поле документа». Существуют

и более сложные условия, например, «текущий пользователь является

временным заместителем пользователя, указанного в поле исполнитель

задания, назначенного на данный документ».

} Параметры, связанные со временем. Например, проверка текущего дня недели.

} Параметры, связанные с данными текущего документа. Например, в

зависимости от суммы договора можно дать права на его редактирование

только пользователям определенной группы.

Второй этап настройки контекстно-ролевой модели заключается в определении

доступности тех или иных данных или операций для настроенных ролей.

При этом одна роль может иметь различные права на выполнение операций

с документом в различных его состояниях. Так, например, в примере на рис. 11

операция «Вернуть на подготовку» для входящего документа доступна регистратору

в состоянии «Зарегистрирован» и недоступна в состоянии «Подготовка» и «В

архиве».

Рис. 11.

Конструктор

ролей позволяет

предоставить

права выполнения

тех или иных

операций и

редактирования

данных для

различных ролей

Page 30: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

29

DocsvisionОписание системы

Проверка безопасности ролевой модели реализуется сервером приложений

Docsvision. Если операция или данные закрыты в настройках контекстно-ролевой

модели, то они недоступны не только из интерфейса приложений, но и на низком

уровне, при доступе через API.

Конструктор бизнес-процессовКонструктор бизнес-процессов – это дизайнер схемы процесса и инструмент

настройки его параметров и функций. Конструктор процессов обеспечивает

визуальный способ описать алгоритм работы приложения с объектами системы.

Он обеспечивает как возможность моделирования и визуализации процесса

(визуального представления для понимания логики и последовательности

обработки), так и его имплементации (в результате получается работоспособное

приложение).

Совмещение задач моделирования и имплементации в одном инструменте

приводит к тому, что для описания процесса используется специальная нотация,

ориентированная на среду исполнения Docsvision 5.5 и ее особенности.

Эта нотация может использоваться как для моделирования (визуального

представления процесса для человека), так и программирования (низкоуровневого

описания). При этом модель описания процессов Docsvision содержит все

конструкции нотации BPMN (визуально с ней не совпадая).

Функции

С одной стороны, язык описания процесса содержит элементы, которые

представляют логику процесса на высоком уровне – функции для обозначения

активностей пользователя и системы, логику последовательности обработки –

ветвления и объединения, а также средства декомпозиции процесса (подпроцессы

для организации иерархического моделирования).

Рис. 12.

Нотация

процессов в

дизайнере

Docsvision

ориентирована не

на документиро-

вание, а на

создание

приложений,

реализующих

логику обработ-

ки документов в

реальном бизнес-

процессе

Page 31: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

30

DocsvisionОписание системы

С другой стороны, он включает стандартные компоненты, которые позволяют

описывать алгоритм обработки, реализовывать в процессе конструкций типа (if

– then – else, do-while) работу со счетчиками, коллекциями, операторы сравнения

и пр. Также имеются низкоуровневые функции, ориентированные на работу с

конкретными бизнес-объектами и их данными, функции обработки специфических

для системы событий, управление синхронизацией процесса.

Имеются механизмы программного расширения стандартного набора функций и

функции для реализации сценариев интеграции с другими приложениями.

Большой набор функций системы позволяет реализовать практически любой

процесс без программирования. Однако в случае необходимости есть возможность

реализовать программное расширение, используя функцию Сценарий, которая

позволяет расширить поведение системы. Она запускает произвольный скрипт на

языке C#, можно подключить готовые сборки и скомпилировать итоговый текст

программы.

Есть возможность создавать репозитарий такого рода сценариев и использовать

их в различных процессах, а также API для создания дополнительных функций в

случае необходимости.

Структура процесса (шаблоны, экземпляры, функции, параметры, шлюзы)

Для конструирования процессов Docsvision используются шаблоны. Помимо

функций и структуры их связей, шаблоны содержат параметры. Параметры —

это внутренние переменные процесса, используемые для хранения информации

конкретного экземпляра процесса. Например, в процессе обработки договора

переменные – это сам файл документа, сумма договора, имя ответственного и

согласующих лиц, сроки согласования, контрагент, вид услуги или продукции и

пр. Переменные процесса используются для двух целей:

Рис. 13.

Функция

«Сценарий»

позволяет

расширять

поведение системы

и реализовать

произвольную

обработку в

рамках процесса

Page 32: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

31

DocsvisionОписание системы

} Для определения логики обработки процесса и передачи информации между

функциями.

} Для параметризации исполняемых функций.

Шаблон процесса может содержать функции, которые не содержат конкретных

значений параметров (например, имени исполнителя задачи, или срока

выполнения). Эти параметры могут определяться (или даже вычисляться) по ходу

выполнения процесса и на предыдущих шагах, и передаваться в функцию в момент

ее инициализации. Это позволяет моделировать сложные процессы, адаптируемые

к обрабатываемой в них информации и существенно сокращать количество

шаблонов. Если бы данная функция отсутствовала, для каждого частного случая

потребовался бы отдельный шаблон, что сильно усложнило бы сопровождение

приложений.

Конструктор бизнес-процессов поддерживает работу с большим количеством

переменных - как типовых (например, число и строка), так и специфичных для

системы документооборота (указатель на экземпляр документа или папку). Набор

переменных также может быть расширен с использованием соответствующего

API.

Переменные в процесс передаются одним из следующих способов:

} Могут быть заданы по умолчанию.

} Вводятся вручную при старте процесса.

} Переданы в подпроцесс при автоматическом запуске из родительского

процесса.

} Сформированы в ходе процесса, в частности, с помощью скриптов.

} Получены из обрабатываемых процессом документов и других объектов.

} Переданы в процесс при выполнении операции запуска процесса из интерфейса

работы с конкретным документом, если процесс запускается бизнес-логикой

обработки документа;

Шлюзы

Еще один компонент подсистемы управления процессами – шлюз. Шлюз

позволяет настраивать те или иные сценарии взаимодействия с внешними

приложениями, например, с электронной почтой, приложениями на базе платформ

1С или SharePoint. При установке того или иного шлюза в системе появляется

дополнительный набор функций данного шлюза и соответствующие переменные.

Например, шлюз в электронную почту добавляет специфические переменные

для работы с сообщениями – сообщение, получатель сообщения и вложения,

а также дополнительный набор функций для создания и посылки сообщения,

поиска новых сообщений и получения из них информации (текста, вложений,

адресатов).

Page 33: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

32

DocsvisionОписание системы

Подсистема управления бизнес-процессами Docsvision выполняет в системе

несколько функций:

} Это средство визуального моделирования процессов и их высокоуровневого

описания, а также инструмент быстрого прототипирования приложений,

которые могут быть использованы, скажем, для согласования технического

задания с заказчиком системы.

} Это средство визуальной разработки приложений с поддержкой

сложных алгоритмических функций, реализующих серверную активность,

интеграционные функции и функции маршрутизации заданий. При этом

инструмент позволяет реализовать большое количество функций приложения

без программирования с использованием визуальных инструментов настройки.

} Инструмент для мониторинга хода исполняемых процессов и средство сбора

разнообразных показателей и метрик процессов.

} Средство интеграции бизнес-процессов, пересекающих границы

информационных систем, например, СЭД и ERP/CRM.

Процесс может быть запущен вручную, или из другого процесса, или автоматически

при изменении состояния карточки, или с использованием программного

интерфейса (API).

Представления DocsvisionПредставление – это элемент системы, который позволяет просматривать списки

карточек, организованные определенным образом в контексте приложения.

Представление, в отличие от привычной таблицы в учетной системе — гораздо более

гибкий инструмент. Это связано с необходимостью отображать в одном табличном

представлении самые различные типы объектов, которые могут использоваться в

приложении, и формировать определенный контекст этого отображения. Кроме

того, представления позволяют пользователям приложений выполнять разные

действия с объектами, которые отображаются в представлении в соответствии с

бизнес-логикой приложений. В Docsvision есть специальный конструктор, который

позволяет настраивать структуру представления без программирования.

Рис. 14.

Папки и

представления

Docsvision

Page 34: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

33

DocsvisionОписание системы

Представление может быть связано как с обычной, так и с виртуальной папкой,

и отображает объекты соответствующей папки. Каждая строка соответствует

элементу (в нашем случае – документу или заданию), в строке отображаются

отдельные атрибуты соответствующей карточки. Таблицу можно сортировать,

фильтровать, группировать объекты, инициализировать из нее работу с

документом, выполнять различные операции, в частности, групповые (например,

экспортировать документы, изменять их статус).

Особенность представлений Docsvision в том, что в одной таблице могут

отображаться документы разных типов (аналог Join таблиц в SQL базе данных),

при этом вывести в представление можно абсолютно любой объект, отобразить

любое его поле, а также различные производные данные.

В представлении можно отобразить не только значение конкретных атрибутов

документов, но и атрибуты карточек и справочников, связанных с исходной.

Например, отобразить в представлении отдельные атрибуты документа и заданий,

которые связаны с этим документом.

Может потребоваться отображение атрибутов объектов, которые находятся

в более сложных отношениях с документом. Например, может потребоваться

отобразить данные (скажем, номер телефона) сотрудника, который является

исполнителем задания по документу. Случай очень практичный – используя такое

представление, мы можем быстро позвонить сотруднику, который задерживает

исполнение документа, без необходимости открывать справочник сотрудников.

Если рассмотреть информационную структуру, мы увидим, что номер телефона

хранится не в документе и не в связанной карточке, а в справочнике сотрудников,

на запись которого указывает поле карточки задания, связанного с документом.

Система позволяет отображать в представлении данные из различных объектов,

которые связаны с отображаемым документом непосредственно, либо через

промежуточные объекты (как в примере с телефоном сотрудника).

В отдельных случаях возникает необходимость в представлении отображать

синтетические данные, которые вычисляются на основании данных самого

отображаемого документа или объектов, связанных с ним. Например, можно

вывести число заданий, связанных с документом, или общую сумму актов, закрытых

по договору.

Рис. 15.

Пример

представления с

группировками

и расчетом

агрегирующих

значений

Page 35: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

34

DocsvisionОписание системы

В случае необходимости данные в представлении могут быть сгруппированы по

значениям той или иной колонки таблицы. На каждом уровне группировки могут

быть посчитаны различные численные агрегаты – общее количество элементов,

сумма и среднее для числовых полей и пр.

Система позволяет настроить визуальное оформление представления: шрифты,

цвет фона, формат разделителей и прочее, а в случае необходимости можно

определять разные цветовые выделения для разных элементов (строк) таблицы,

в зависимости от условий (значений отдельных полей таблицы). Например,

могут быть выделены документы, по которым нарушены сроки исполнения, или

те, срок исполнения которых наступит в ближайшее время. Система настройки

визуального выделения достаточно гибкая и позволяет решать все практические

задачи, возникающие при разработке приложений.

Структура решений на базе платформы

Все решения, создаваемые на базе Docsvision, строятся на базе общей модели

приложения и используют общие сервисы, программные и пользовательские

интерфейсы, что обеспечивает их тесную интеграцию, включая:

} Единые механизмы хранения и представления информации

Все данные всех приложений, реализованных на базе платформы Docsvision,

хранятся в едином депозитарии на базе промышленного SQL-сервера и

распределенного хранилища бинарных данных. Это обеспечивает оптимизацию

стоимости хранения больших массивов файловой информации и организации

резервного хранения данных, удобство сопровождения системы.

} Единые механизмы аутентификации и разграничения прав доступа к

электронным документам и действиям с ними

Независимо от того, с какими приложениями взаимодействует сотрудник, он

единожды аутентифицируется в системе. На основании его учетной записи

определяются роли пользователя в системе и предоставляются права на

объекты различных приложений. Во всех приложениях действует единая

система разграничения прав доступа. В системе поддерживается три механизма

безопасности – традиционная дискреционная; мандатная, построенная на

основе сравнения уровня допуска пользователя и уровня доступа документа;

и инновационная ролевая модель безопасности, построенная на основе

определения бизнес-правил и контекста обработки документа. Все три модели

могут одновременно использоваться для формализации и контроля доступа.

Для настройки ролевых правил в системе есть специальный конструктор ролей.

} Общая структура справочников

Все приложения, реализованные на платформе, могут использовать

единую структуру настраиваемых справочников, которые обеспечивают

информационное единство всех данных во всех приложениях в системе.

Page 36: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

35

DocsvisionОписание системы

Изначально в платформе реализовано несколько общеупотребительных и

системных справочников – сотрудников, контрагентов, категорий и пр. В

системе могут создаваться дополнительные справочники, в зависимости от

потребности конкретного решения, а имеющиеся справочники могут изменяться

со временем, не требуя изменений в уже использующих их приложениях. Для

этого в системе есть специальный конструктор справочников.

} Общие средства поиска и извлечения информации

Единые инструменты поиска – полнотекстового и атрибутивного, позволяют в

едином поисковом запросе искать документы, вне зависимости от того, в каком

приложении они были созданы. Помимо упрощения использования системы

это позволят формировать сложные выборки для анализа и извлечения знаний

из информации, накопленной в системе.

} Общая инфраструктура работы с заданиями и уведомлениями

Наиболее типичная операция пользователя в системе автоматизации

документооборота – обработка заданий. Docsvision предоставляет пользователю

единый инструмент работы со всеми заданиями в системе, вне зависимости от

того, в каком процессе или приложении они были порождены. В рамках единой

структуры заданий возможна общая система приоритезации, делегирования,

замещений и пр. Вне зависимости от контекста обработки и типа документа

пользователь работает с унифицированными заданиями, имеющими сходный

интерфейс и сценарии их обработки.

} Общие средства навигации и доступа к данным и организации рабочего

пространства пользователя

Доступ пользователя ко всем приложениям, реализованным на платформе

Docsvision, организован через общий интерфейс – рабочее пространство

пользователя обеспечивает доступ к механизмам поиска, работы с документами

и заданиями, функциям отдельных приложений. В случае необходимости есть

возможность формировать сложные представления, включающих данные из

различных приложений и располагать их в рабочем пространстве пользователя.

Все приложения унифицированы по интерфейсу и базовым сценариям

взаимодействия, что упрощает работу пользователя в системе и делает ее

максимально комфортной. Благодаря этой унификации, при внедрении в

системе нового приложения, у пользователя практически нет необходимости

проходить обучение для начала его использования.

} Единые средства управления жизненным циклом документов, маршрутизации

и управления процессами

Все приложения, реализуемые в системе Docsvision, могут использовать

общие механизмы управления состоянием и жизненным циклом документов,

единую среду автоматизации бизнес-процессов и средства автоматизации

процесса согласований, обеспечивающих маршрутизацию документов в

соответствии с бизнес-логикой конкретного процесса. Подсистема бизнес-

процессов позволяет строить сквозные процессы, которые объединяют

работу с несколькими типами документов, которые формируются в рамках

различных приложений. Наличие единых инструментов позволяет существенно

упростить и сократить по времени реализацию дополнительных приложений в

системе. Шлюзы workflow позволяют также интегрировать бизнес-процессы,

«пересекающие границы» отдельных систем предприятия.

Page 37: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

36

DocsvisionОписание системы

} Единые средства разработки и настройки

Приложения в системе могут разрабатываться как с помощью Low-code

визуальных конструкторов, практически не требующих программирования, так

и с помощью низкоуровневых программных инструментов, базирующихся на

API системы. Но вне зависимости от используемых инструментов все разработки

ведутся на базе общих принципов построения решений и базового набора

программных компонент. Это обеспечивает их единство с точки зрения логики

построения решения и пользовательских сценариев, позволяет разработчикам

повторно использовать наработки, а пользователям – минимизировать время

освоения нового приложения.

} Единую инфраструктуру управления и администрирования приложений

Все приложения администрируются централизовано, через общие инструменты

управления системой. В системе реализована единая система журнализации и

аудита событий, общая консоль настройки и конфигурирования системы. Все

это существенно упрощает работу администраторов системы, в сравнении

с администрированием большого количества независимо разработанных

приложений.

Модель приложения Docsvision, с одной стороны, достаточно гибкая, что

позволяет строить очень разнообразные решения, а с другой - определяет

границы приложений и стиль их организации, что обеспечивает единство системы,

несмотря на все разнообразие реализованных в ней задач.

Модель приложения Docsvision включает следующие основные компоненты:

} Карточка – основной объект системы, который позволяет смоделировать

любой прикладной объект приложения. Наиболее типичными объектами в

приложениях СЭД являются карточки документов (входящий, исходящий,

договор) и заданий (задание на исполнение, задание на согласование).

} Справочник – специальный вид карточки, существующий в системе в

единственном экземпляре и позволяющий сохранять самую разнообразную

справочную информацию, в частности, иерархически организованную.

Рис.16.

Пример карточки

документа в

приложении

Docsvision

Page 38: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

37

DocsvisionОписание системы

} Процесс – объект, моделирующий последовательность выполнения действий

в рамках приложения, группы взаимосвязанных приложений или на уровне

системы. Процесс включает как ручные этапы (взаимодействия пользователя

с карточками или внешними объектами) и автоматические этапы, реализуемые

сервисом, для обеспечения логики обработки процесса.

} Папка – объект, обеспечивающий группировку карточек. В системе имеются

обычные папки – группируют карточки, которые в них созданы, либо

посредством физического размещения в них ярлыков на карточки (аналогично

папкам файловой системы) — и виртуальные, которые группируют карточки по

соответствию определенным критериям (результаты поиска).

} Представление – групповое представление набора карточек в виде таблицы

или набора строк. В ячейках таблицы отображаются атрибуты карточек, их

агрегаты и результаты выполнения расчетных операций.

Любое приложение является комбинацией определенного набора из

перечисленных выше объектов.

Рис. 17.

Справочник

контрагентов

Рис. 18.

Процесс

Docsvision

Page 39: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

38

DocsvisionОписание системы

Данная структура обеспечивает следующие возможности конструирования

приложений:

} Каждый из объектов приложения (карточка, процесс, папка и представление)

может быть модифицирован без изменения остальных компонентов. Например,

если маршрут согласования документа изменился, можно перестроить

процесс, не затрагивая другие компоненты приложения.

} По ходу возникновения новых функциональных требований в приложении

могут создаваться новые объекты и подключаться к уже имеющимся.

} Для всех перечисленных компонентов системы имеются интерактивные

конструкторы, которые позволяют как создавать приложения в режиме Low-

code, так и вносить изменения в уже работающие приложения.

} Поддерживаются низкоуровневые программные интерфейсы, которые

позволяют реализовывать функциональность, расширяющую возможности

средств интерактивного моделирования.

} Отдельные приложения не изолированы друг от друга, доступ к отдельным

объектам приложения разграничивается только правами доступа.

} Все приложения в системе используют общую структуру справочной

информации.

} Один бизнес-процесс может работать с объектами, созданными в рамках

различных приложений.

} Одна папка может группировать карточки, созданные в различных

приложениях.

} Одно представление может отображать данные из карточек, созданных в

различных приложениях.

} Карточки одного приложения могут содержать ссылки на карточки любого

другого приложения, к которому пользователь имеет права доступа.

} Имеется возможность искать объекты любых приложений, к которым

пользователю предоставлены права доступа, посредством одного поискового

запроса.

Описанные возможности модели приложения обеспечили фундамент для

реализации на базе Docsvision самых разных решений для совершенно разных

Рис.19.

Компоненты,

из которых

формируется

прикладное

решение на

платформе

Docsvision

Page 40: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

39

DocsvisionОписание системы

отраслей, при этом позволив решить проблему размещения всех приложений в

единой интегрированной среде.

Далее кратко описаны возможности всех компонентов модели приложения и

инструментарий для создания решений.

Карточки – документы и заданияОсновным компонентом решения на базе платформы Docsvision являются карточки.

Это объект, который может моделировать произвольную бизнес-сущность, на

практике чаще всего используется 2 типа карточек - документ и задание.

Карточка документа позволяет создавать и обрабатывать в системе самые разные

документы - от простой заметки до документа со сложной структурой, жизненным

циклом обработки и логикой заполнения. Карточка документа может содержать

как структурированную (метаданные), так и неструктурированную информацию

(файлы).

Неструктурированная информация документа – это разного рода файлы. При этом

реальный документ в приложении Docsvision может содержать:

} Один файл.

} Набор версий файла (хранящих историю его изменения).

} Несколько файлов одного или разных форматов (например, договор и

приложения), каждый из которых может содержать историю версий.

} Более сложные структуры файлов, включающие иерархическую

упорядоченность данных, например, в задачах технического документооборота

(описание структуры изделия).

Структурированная информация – набор атрибутов документа. Эти данные

принято называть метаданными (данными, сопровождающими файл документа).

В приложениях Docsvision могут обрабатываться документы, которые не содержат

файлов, а включают только структурированную информацию. Например,

первичные документы бухгалтерского учета.

Структурированная часть документа может включать:

} Набор атрибутов стандартных типов (строка, число, дата, время).

} Атрибуты перечисления – для различных типов документов атрибуты могут

выбираться из предопределенных значений различного типа (валюта договора,

уровень доступа и пр.).

} Атрибуты, заполняемые из справочников. В отличие от простых перечислений,

это могут быть сложноорганизованные справочники (например, сотрудников,

контрагентов, номенклатуры дел или товарных позиций и пр.). С одной записью

справочника может быть связано несколько атрибутов документа. Например,

Page 41: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

40

DocsvisionОписание системы

для конкретного контрагента в документе могут сохраняться такие атрибуты как

ФИО, юридический адрес, телефон и пр. В зависимости от способа обработки

документа справочное поле может сохранять статическое значение выбранного

элемента справочника или ссылку, которая может изменять значение

динамически – при каждом открытии документа, а, возможно, и то, и другое.

} Атрибуты, связанные с конкретным видом документа или бизнес-процесса –

ссылка на связанный документ, категория документа, ссылка на папку, в которой

хранятся документы, номер документа, ссылка на задание, которое создано по

документу, ссылка на учетную транзакцию в ERP-системе и т.п.

} Перечисленные атрибуты в теле документа могут быть организованы в таблицы,

например, если документ содержит список номенклатурных позиций или список

сотрудников, участвующих в согласовании документов или список ссылок на

другие документы, образующие пакет документов. Каждая строка таблицы

может быть достаточно сложной по структуре и содержать все перечисленные

выше наборы атрибутов.

Помимо атрибутов, карточка содержит следующую структурированную

информацию.

Служебная информация – содержит данные, которые накапливаются в ходе

обработки документов и которые нужны не для реализации логики приложения, а

для других задач, например, аудита, анализа безопасности и производительности

и пр. Это могут быть журналы фиксации фактов доступа к документу, история

изменений, сделанных в документе и пр. Как правило, это табличные данные.

Информация о достоверности – специальный вид служебной информации,

с помощью которой подтверждается подлинность авторства и неизменности

документа. Для этого, как правило, используются механизмы электронной

подписи с использованием сертификатов. Иногда могут использоваться и менее

дорогостоящие механизмы, так, например, в системе Docsvision реализован

механизм «простой подписи», не требующий инфраструктуры PKI. Подписываться

могут файлы документов и отдельные атрибуты структурированных данных, также

в подпись может включаться информация о совершении операций в отношении

подписываемых данных.

Системная информация – используется приложением для выполнения различных

сервисных функций и для реализации функций приложений, скрытых от глаз

пользователя. К такой информации в системе Docsvision относятся:

} Время последнего изменения данных документа.

} Информация о правах доступа к документу.

} Наличие блокировки документа или отдельных файлов (Check-in/check-out

контроль).

} Этап жизненного цикла обработки документа (состояние документа).

Как видим, документ в системе документооборота - сложный информационный

объект.

Page 42: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

41

DocsvisionОписание системы

СправочникиВ системе имеется базовый набор справочников, которые используются в любых

приложениях. К ним относятся справочник сотрудников, справочник контрагентов

и категорий.

Справочник сотрудников содержит информацию об организационной структуре

организации, данные о персоналиях, о структуре замещения. Он содержит также

системную информацию о сотруднике, которая используется в тех или иных

приложениях, например, о расположении домашней папки пользователя и пр. В

справочнике пользователя фиксируется ассоциация сотрудника с учетной записью

операционной системы, под которой осуществляется авторизация пользователя в

системе.

Справочник контрагентов содержит информацию о компаниях и персоналиях,

являющихся сотрудниками внешних организаций, информация о которых

используется в приложениях, реализуемых на базе платформы.

Помимо базовых справочников, поставляемых в составе платформы, имеется

возможность создавать произвольные справочники с использованием

конструктора справочников.

Справочники сотрудников и контрагентов, как и справочники, создаваемые в

решениях, в случае необходимости могут быть настроены. Форма и содержание

полей записей справочников могут быть настроены аналогично тому, как

настраивается форма карточки документа и задания.

Но в отличие от документов, записи справочника имеют простой неизменяемый

жизненный цикл и не используют контекстно-ролевую модель для определения

возможностей пользователя для обработки записей справочника.

Справочник категорий – это специализированный настраиваемый иерархический

справочник, в котором могут фиксироваться категории документов. Имеется

возможность заводить множество категорий, определяющих различные способы

категоризации документов в системе. В карточку может быть добавлен специальный

элемент управления, который позволяет относить его к тем или иным категориям.

Платформа Docsvision содержит механизмы, позволяющие искать документы,

относящиеся к тем или иным категориям. Механизм категорий позволяет

структурировать документы не на уровне отдельного приложения, а на уровне

всей организации и создавать базы знаний по различным предметным областям.

ПроцессыЕсли модель жизненного цикла карточки определяет состояния одного объекта

системы и возможности пользователей по его обработке в различных состояниях,

то бизнес-процессы предназначены для реализации сложных сценариев

маршрутизации, взаимодействия с внешними по отношению к СЭД приложениями,

для обработки событий, не связанных с активностью пользователей, и другой

серверной активности в отношении документов.

Page 43: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

42

DocsvisionОписание системы

Например, БП может автоматически создавать новые документы в случае

необходимости, обеспечивать передачу информации между документами при

возникновении тех или иных событий, рассылать уведомления и т.д.

Компоненты навигации и поискаПлатформа Docsvision обеспечивает не только средства разработки приложений, но

и интегрированную среду для доступа к данным всех приложений, реализованных

в системе. Рабочее место пользователя обеспечивает доступ к документам и

заданиям, средства навигации и поиска. Все приложения организованы в иерархии

папок, которые содержат карточки данного приложения. Как правило, приложение

представляет собой набор из физических и виртуальных папок – специальных

папок, с которыми связаны поисковые запросы и в которых отображаются

документы и задания, соответствующие данным поисковым запросам.

Рабочее место пользователя позволяет настроить наборы папок, доступные

конкретному пользователю, в соответствии с его ролью в тех или иных приложениях.

Поимо этого, рабочее место пользователя содержит интерфейс для осуществления

полнотекстового поиска на всем пространстве данных, доступных пользователю

системы. Полнотекстовый запрос можно специализировать, указав те папки, в

которых будет искаться нужный объект, расширение файла и другие параметры.

В рабочем месте пользователя располагается также навигационная панель

для работы с заданиями, в которой отображаются все задания и документы, с

которыми работает пользователь, вне зависимости от того, в каком приложении

или процессе они созданы. Имеется возможность удобного доступа к заданиям в

различных контекстах.

Рис.20.

Рабочее место

пользователя

Docsvision

предоставляет

унифицированный

доступ ко всем

приложениям,

созданным на базе

платформы

Page 44: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

43

DocsvisionОписание системы

Поддержка средств безбумажного документооборота Система Docsvision содержит комплекс функций, обеспечивающих поддержку

юридически значимого безбумажного документооборота в соответствии с

требованиями Российского законодательства. Приложения, создаваемые на базе

платформы, могут включать следующие функции:

Инструменты нанесения и верификации электронной подписи (ЭП). Могут быть

использованы все виды ЭП, в соответствии с требованиями ФЗ-63:

} Простая. В Docsvision реализован собственный механизм нанесения и

верификации подписи, аналогичный сценариям нанесения усиленной

подписи, но не требующий ключей и сертификатов.

} Усиленная неквалифицированная.

} Усиленная квалифицированная.

} Усовершенствованная квалифицированная. С возможностью

долгосрочного хранения документов, подписанных ЭП.

} Компоненты для верификации и адекватная визуализации различных типов

проверки электронной подписи с диагностикой различных видов нарушений

целостности ЭП – нарушение целостности документа, устаревание сертификата,

дискредитация сертификата и пр.

} Возможность подписания различных фрагментов документа – файлы, атрибуты.

Настройка структуры ЭП документа для каждого вида документа.

} Возможность просмотра подписываемого и подписанного контента (согласно

требования ФЗ-63) в интерфейсе учетной карточки документа.

} Возможность реализации входного контроля корректности ЭП, обеспечивающей

долгосрочное хранение (наличие штампа времени), и возможности

дополнительного заверения штампа времени в случае его отсутствия.

} Возможность импорта-экспорта документов с электронной подписью.

} Наличие интеграционного шлюза с операторами ЭДО для реализации

кросс-организационных процессов безбумажного юридически значимого

документооборота. Данный модуль обеспечивает возможность построения

бесшовных процессов безбумажного документооборота с контрагентами

посредством услуг оператора ЭДО. Наличие данного модуля позволяет

встраивать функции обмена с контрагентами в произвольное решение

на базе платформы без программирования. Обмен может вестись как

неформализованными документами, так и документами, подлежащим

оформлению согласно принятым стандартам и жесткому регламенту обмена

(например, УПД и счет-фактура).

Page 45: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

44

DocsvisionОписание системы

Примеры решений на базе

платформы DocsvisionПеречисленные компоненты и средства разработки позволяют создавать

чрезвычайно широкую номенклатуру приложений - от простейших реестров

документов до сложных систем, включающих большое количество сложных

документов и процессов их обработки. Вот далеко не полный список приложений,

реализованных на базе платформы Docsvision:

} Административное делопроизводство.

} Архивное делопроизводство.

} Управление нормативными документами.

} Электронный архив конструкторской документации.

} Управление процессом материально-технического обслуживания.

} Управление заявками (командировки, оборудование, закупки, пропуска…).

} Система согласования финансовых документов (утверждение бюджета,

обработка заданий на платеж…).

} Автоматизация кадровых процессов – найм, увольнение, аттестация и пр.

} Управление закупочной документацией.

} Автоматизация экспертизы строительной проектной документации.

} Архив первичной бухгалтерской документации.

} Автоматизация работы кредитного комитета банка.

} Управление претензионно-исковой работой.

} Управление инвестициями.

} Управление проектной документацией и ходом исполнения проектов и т.п.

Полный список решений можно найти на сайте Docsvision.com (https://docsvision.

com/products/dv-catalog/ )

Приложение«Управление документами»Система Docsvision 5.5, являясь платформой для разработки самых разнообразных

решений в области автоматизации документооборота, включает в свой состав набор

типовой функциональности, которую можно использовать сразу после установки

системы в организации. «Управление документами» входит в состав системы и

Page 46: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

45

DocsvisionОписание системы

решает наиболее типичные задачи автоматизации документооборота, которые

встречаются практически во всех организациях. Таким образом, «Управление

документами», с одной стороны, является законченным решением, а другой –

может рассматриваться как база для дальнейшей настройки с использованием

конструкторов. Функциональность «Управления документами» включает в себя

следующий набор функций:

Средства электронного архиваПриложение «Управление документами» включает все необходимое для

организации архива электронных документов, включая:

} Возможность формировать структуру архива через механизм папок,

виртуальных папок и справочник категорий.

} Возможность разграничивать доступ как к папкам, так и к отдельным документам.

} Использовать стандартные карточки приложения «Управления документами»

для фиксации метаданных документов.

} Возможность прикладывать бинарные файлы в карточку файловой системы

или сканировать бумажные документы.

} Использовать простую и усиленную электронную подпись.

} Использовать полнотекстовый или атрибутивный поиск документов в архиве с

учетом ваших полномочий.

} Использовать механизм оффлайновой блокировки документа (Check-in/Check-

out контроль).

} В приложении «Управление документами» настроены карточки для наиболее

распространенных типов документов: входящий, исходящий, служебная

записка, заявка, ОРД, рабочий.

Для них реализованы стандартные настройки – описание жизненного цикла,

ролевой модели и базовых процессов обработки данных типов документов,

которые можно использовать as-is или адаптировать к сценариям использования

документов в конкретной организации.

Средства автоматизацииделопроизводстваВ приложении реализованы простые механизмы делопроизводства, которые

включают следующие возможности:

} Регистрация документов в журналах.

} Присвоение номера документа, согласно правилам нумерации.

} Назначение исполнителей и контролера по документу.

Page 47: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

46

DocsvisionОписание системы

} Доставка документов исполнителю.

} Контроль хода исполнения документа.

} Построение отчетов по исполнительской дисциплине.

Средства групповой работыс документамиПриложение «Управление документами» содержит возможности для организации

различных неформализованных процедур работы с документами. Пользователи

системы имеют следующие возможности:

} Создавать рабочие области (папки) для обработки документов и разделять их

с другими пользователями системы.

} Назначать задачи по документам и не связанные с документами.

} Делегировать и декомпозировать задания по документам.

} Контролировать ход исполнения заданий и получать отчеты об их исполнении.

} Создавать шаблоны документов для повторного использования.

СогласованияВ приложении «Управление документами» реализованы базовые механизмы

согласования, которые обеспечивают следующие возможности:

} Возможность указать список согласующих лиц документа.

} Выбрать тип согласования: параллельный\последовательный\смешанный.

} Возможность автоматической консолидации текста документа в случае

внесения изменения в текст документа.

} Возможность отправки документа на повторный круг согласования.

} Указать необходимость нанесения утверждающей подписи по результатам

согласования.

} Возможность фиксации результатов согласования и его распечатка в форме

листа согласования.

В случае необходимости реализовать более сложные сценарии согласования для

документов есть возможность создать произвольные маршруты согласований с

помощью конструктора согласований. Помимо вышеперечисленных функций

конструктор согласований обеспечивает следующие возможности:

} Настройка сложного маршрута, включающего как параллельные, так и

последовательные и альтернативные этапы, и их комбинацию.

Page 48: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

47

DocsvisionОписание системы

} Механизмы условной маршрутизации, определение маршрута согласования на

основе метаданных согласуемого документа.

} Возможность изменять списки согласующих лиц при старте и по ходу

согласования.

} Автоматическое вычисление согласующих лиц на основании определенной

логики.

} Изменение бизнес-логики действий участников согласования.

} Согласовывать содержимое формализованного документа (например,

учетного), не имеющего приложенного файла.

} Возможность изменять структуру маршрута согласования при повторном

согласовании.

Конструктор согласования – мощный инструмент для описания самых

разнообразных маршрутов согласования, но доступный предметному специалисту

и не требующий навыков программирования.

ЗаключениеПлатформа Docsvision 5.5 создавалась в ответ на растущие требования рынка к

системам класса ECM, вызванные переосмыслением их роли в корпоративной

информационной системе.

Стремительное развитие информационных технологий и переосмысление

задач корпоративного управления превращает ECM в инструмент цифровой

трансформации бизнеса. Это, в свою очередь, приводит к тому, что система

начинает охватывать до 100% всех пользователей компании, а номенклатура задач,

которые она должна решать, существенно расширяется.

Docsvision 5.5 проектировалась с учетом этих тенденций. Были проведены

исследования опыта крупных мировых производителей подобных систем и

практики построения высоконагруженных решений в принципе для обеспечения

возможности практически неограниченного масштабирования и работы с

десятками и сотнями терабайт данных и десятками тысяч пользователей. Вкупе

с богатыми инструментами построения решений и развитыми средствами

интеграции платформа Docsvision 5.5 является основной для создания бизнес-

решений любой направленности и масштаба.

Page 49: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

48

DocsvisionОписание системы

В настоящем документе представлено общее описание архитектуры, инструментов

разработки и функциональности платформы. Подробнее о различных аспектах

работы системы Вы можете узнать из официальной документации:

Руководство разработчика

http://docsvision.com/docs/General/551/ProgrammerGuide/index.html

Платформа

http://docsvision.com/docs/Platform/551/AdminGuide/index.html

Модуль «Управление процессами»

http://docsvision.com/docs/Workflow/551/AdminGuide/index.html

Модуль «Базовые объекты»

http://docsvision.com/docs/BaseObjects/551/AdminGuide/index.html

Руководство по приложению «Управление документами»

http://docsvision.com/docs/DocumentManagement/551/UserGuide/index.html

Page 50: Docsvision · разработки решений не только разработчиков (но и инженеров и обычных пользователей), обеспечивающих

Если вы хотите узнать о том, как Docsvision может помочь именно вашему бизнесу, напишите или позвоните нам!

Попробуйте самостоятельно обработать входящий документ, согласовать договор, назначить и проконтролировать задание.

8 (800) 505-05-65+7 (812) [email protected]

Контактная информация

Демоверсия

facebook.com/docsvisionvk.com/docsvision_comyoutube.com/docsvision

Если вы хотите узнать о том, как Docsvision может помочь именно вашему бизнесу, напишите или позвоните нам!

Попробуйте самостоятельно обработать входящий документ, согласовать договор, назначить и проконтролировать задание.

8 (800) 505-05-65+7 (812) [email protected]

Контактная информация

Демоверсия

facebook.com/docsvisionvk.com/docsvision_comyoutube.com/docsvision

2019