ИС на платформе AF5
Система представляет собой программный комплекс, состоящий из платформы и приложений – функциональных модулей, решающих различные прикладные задачи.
Документоориентированная платформа хранения и обработки данных AF5, основанная на Java Enterprise Edition, использует реляционную СУБД для хранения атрибутивных данных и репозиторий контента на основе сетевой файловой системы.
Функциональные модули – компоненты системы, реализующие как самостоятельные, так и «связанные» прикладные функции.
Основные тип клиентского рабочего места – web-АРМ для всех пользователей, а также АРМ администратора – взаимодействуют с сервером системы по интернет-протоколу (HTTP/S).
Архитектура ИС на платформе AF5 имеет несколько уровней:
- Уровень представления информации (интерфейсов пользователей), обеспечивающий взаимодействие web-клиентов с сервером;
- Уровень предметной области - функциональные модули, обеспечивающие реализацию требований предметной области (например, документооборота);
- Уровень системных сервисов (платформа AF5), реализующий её базовые функции: управление конфигурацией системы, хранение служебных и функциональных объектов, поиск по ним, управление процессами, разграничение доступа к объектам.
Архитектура платформы AF5
Платформа защищенного хранения и обработки данных AF5 включает:
- Собственный уровень представления информации (интерфейсов пользователей), на котором основано АРМ администратора, и могут быть реализованы дополнительные специализированные АРМы, включает:
- Составное приложение «список/редактор системных объектов».
- Сервис конфигурируемых списков.
- Сервис конфигурируемых форм.
- GUI компоненты отображения конфигурируемых форм.
- Основные виджеты, отображающие атрибуты объектов системы.
- Уровень "ядра" платформы, реализующий её основные сервисы и предоставляющий публичный API для работы с ними другим подсистемам (в частности серверу CompanyMedia 5) и интерфейсному слою платформы:
- Сервис конфигурации – обеспечивает хранение и контроль целостности расширяемой конфигурации системы, а также доступ других компонентов как к конфигурации в целом, так и к отдельным её компонентам только на чтение (без возможности изменения).
- Сервис хранения доменных объектов – выполняет основные операции (чтение, сохранение, удаление) над конфигурируемыми структурами данных в системе – доменными объектами.
- Подсистема хранения вложений – обеспечивает хранение неструктурированных данных – файлов (вложений), а также доступ к ним с возможностью подключения адаптеров к различным сервисам хранения файлов (файловая система).
- Сервис точек расширения – предоставляет возможность расширения функциональности системы путём внедрения дополнительного кода в основные операции системы.
- Сервис коллекций, предоставляющий конфигурируемые выборки (списки) по множеству доменных объектов;
- Подсистема поиска – выполняет высокоскоростной поиск текста и другой информации в больших объёмах, структурированных и неструктурированных данных.
- Подсистема уведомлений – выполняет информирование пользователей (с помощью e-mail, всплывающих сообщений в ГИП, e-mail и другими способами) о различных событиях в системе.
- Подсистема регламентов (регламентированных процессов) – управляет выполнением регламентированных процессов обработки данных, задаваемых на языке BPMN.
- Подсистема планирования и выполнения периодических задач.
- Подсистема управления доступом – обеспечивает авторизацию пользователей для выполнения любых операций в системе.
- Сервис регистрации и учёта событий – сохраняет в системе информацию о событиях, связанных с действиями пользователей и администраторов, а также обеспечивает доступ к этим данным.
- Сервис профилей пользователей – обеспечивает хранение индивидуальных настроек пользователей, а также доступ к ним других компонентов системы.
- Административные сервисы: управление конфигурацией (обновление и проверка корректности конфигурации), управление данными о пользователях (создание, удаление), назначение ролей.
- Подсистема отчетов - выполняет формирование отчётов по доменным объектам с использованием конфигурируемых шаблонов.
- Сервис импорта/экспорта объектов системы из/в xml.
Функциональные модули
Функциональный модуль – компонент системы, реализующий более или менее автономный набор прикладных функций.
Примерами функциональных модулей могут быть: базовый документооборот («делопроизводство»), организационно-штатная структура, электронная подпись, межведомственный документооборот, и т.п. Функциональные модули используют сервисы, предоставляемые ядром, и не имеют прямого доступа к хранилищу объектов. Они также обычно включают типовую конфигурацию, предназначенную для облегчения настройки экземпляра системы у конкретного заказчика.
Сам функциональный модуль, как правило, содержит компоненты, охватывающие все уровни системы:
Так, в конфигурации практически всегда присутствует описание дополнительных доменных объектов, отражающих сущности предметной области в процессе автоматизации, и связанные с ними правила расчета матриц доступа для подсистемы управления доступом.
Там же задаются правила настроек индексации для выполнения функций расширенного поиска и форм задания критериев отбора для работы с ним.
Регламенты для автоматизации процессов предметной области (шаблоны в нотации BPMN 2.0 для исполнительного механизма BPM на основе Activiti) также входят в состав конфигурации функционального модуля.
Решение по автоматизации предполагает, как полностью автоматизированные участки обработки, где формализованные алгоритмы реализованы в виде программных компонентов (java) и относятся к слою функциональной логики, так и участки, предполагающие интерактив – некоторые действия пользователя в рамках интерфейса системы. Для последних предназначены дополнительные разделы конфигурации, описывающие интерактивные формы, списки (представления), правила работы элементов управления графического интерфейса пользователя (ГИП) и т.д.
В слое конфигурации также могут указываться шаблоны отчетов. Они также могут подгружаться в систему динамически через ГИП администратора.
Помимо возможности использования стандартных виджетов (заранее разработанных элементов ГИП) функциональный модуль может содержать и расширенный состав специально разработанных элементов управления для решения задач навигации, форматирования, вывода и представления данных и т.д. При этом любой виджет содержит как серверную часть, отвечающую за обработку массива данных (программные компоненты, реализованные отдельными классами java и взаимодействующие с клиентами – как правило, ГИП – посредством принципа запрос-ответ), так и клиентскую, реализованную на java-script и интерпретируемую уже самим браузером при формировании страницы (окна ГИП системы).
Возможность создания программного интерфейса взаимодействия с модулем делает применение функциональных модулей универсальным механизмом для построения крупных информационных систем.
Функции
Платформа AF5 предназначена для создания единой инфраструктуры, обеспечивающей возможность:
- работы с едиными справочниками
- оптимальной и надежной доставки информации
- предоставления универсальных сервисных функций документооборота
- многоуровневого администрирования системы
Подсистемы AF5
AF-Справочники
- Ведение справочника организаций — «Справочник организаций» (СпО)
- Ведение иерархической организационной структуры, ее персонала с указанием настроек рабочих мест, иерархии функциональных ролей — «Структура организации» (СО)
- Ведение справочника персон (работников внешних организаций, где не установлена система CompanyMedia, частных лиц или граждан) – «Справочник персон» (СпП)
- Ведение номенклатуры дел организации — «Номенклатура дел» (НД)
AF-Портал
- Управление конфигурацией WEB-клиента для всех пользователей, группы пользователей и отдельным пользователям:
- Право на создание конкретного типа документа или поручения
- Структура дерева папок - состав главных разделов и папок по хранилищу системы
- Списки доступных для поиска типов документов
- Описание структуры коллекций (представлений) объектов – какие колонки с какими свойствами открываются в WEB-клиента
- Показ очередей поступивших и направленных документов: адресованных, на исполнение, на согласование, подпись, ознакомление и т.д.
- Сквозной поиск по всем подсистемам СМ нужных документов по различным параметрам, например: по заголовкам, по папкам, по типам, по базам данных, по статусам, по датам создания, по содержанию и т.д.
AF-Сервис
- Информирование о поступлении документов — «Уведомление»
- Контроль ознакомления с документами — «Ознакомление»
- Выполнение согласования документа — «Согласование»
- Автоматизированная система контроля исполнения заданий — «Контроль заданий» (КЗ)
- Ведение списков рассылки — «Списки рассылки»
- Формирование дел по хронологическому и предметно-вопросному принципу — «Формирование дел» (ФД)
- Получение регистрационного индекса документа с помощью счетчиков номеров — «Нумератор»
- Сервис построения отчетов по хранящейся в СМ информации, печать по формам отдельных документов на базе JasperReports
- Хранение документированного обсуждения по всем типам объектов системы — «Обсуждения»
AF-Администрирование
- Конфигурация системы — «Структура системы» (СС)
- Настройки установки возможных связей между документами — «Классификатор связей»
- Сервис запуска программных задач по расписанию
Счетчики номеров документов
Многие из бизнес-модулей СМ (например, ВхД, ВнД, ИсхД, ОРД, ОГ, Договоры, Поручения) используют в своей работе последовательно увеличивающиеся регистрационные индексы — номера документов. Для реализации этой функции в СМ используется модуль настроек «Нумератор», где хранятся документы «Счетчики номеров».
Формат регистрационного индекса документа может быть произвольный — это настраивается в конструкторе формата номера в документе «Счетчик номеров». Составные части номера могут включать в себя статический текст, порядковый номер из счетчика, номенклатурный индекс, результат вычисления формулы по значению полей документа, которому присваивается номер.
Количество счетчиков определяется такими параметрами, как:
- количество бизнес-модулей (хотя несколько бизнес-модулей могут пользоваться одним счетчиком);
- количество подразделений (хотя одним счетчиком могут пользоваться несколько подразделений);
- количество сотрудников, использующих собственные счетчики номеров;
- количество видов документов, по которым ведется отдельная нумерация;
- количество других уникальных параметров (можно задавать формулой)