Ядро системы — достаточно абстрагированный от предметной области проблемно-ориентированный инструмент. Работа механизмов ядра не зависит от функциональности системы. Ядро включает в себя:
- систему учета банковских операций;
- систему хранения документов;
- транзитную систему.
Система учета выполняет фактический и позиционный учет операций, а также формирует “ограничения” на лицевые счета на базе единой абстрактной модели.
Система хранения документов обеспечивает формализацию и хранение документов предметной области.
Транзитная система осуществляет взаимодействие системы учета с прикладной системой.
Реализацию функциональности, адаптацию к изменениям предметной области обеспечивают механизмы прикладной системы, состоящей из трех компонент:
- компоненты поддержки документооборота и выполнения операций;
- компоненты справочников и классификаторов;
- компоненты представления системы учета в аспекте предметной области.
Прикладная система обеспечивает реализацию объектов и операций предметной области.
Система безопасности и управления доступом
Система безопасности и управлением доступом призвана обеспечить разграничение прав пользователей системы к ее объектам (операциям и данным). Она базируется на сервере данных и использует для управления доступом к объектам БД — таблицам и процедурам — возможности сервера данных. Для проверки возможности выполнения пользовательских процедур, которые защищает система, применяется специализированный сервер защиты. Он реализован в виде сервера приложений.
Основными требованиями, предъявляемыми к системе безопасности и управления доступом, являются гибкость при определении объектов доступа и удобство администрирования при управлении доступом. Поэтому была выбрана матричная система защиты, предусматривающая, что управление доступом рассматривается как с точки зрения доступа к прикладным объектам системы, так и относительно доступа к прикладным операциям системы.
Для определения прав пользователя на возможность осуществлять операции и на доступ к объектам надо построить некую матрицу, узлами которой являются пересечения требований на доступ к объектам и операциям.
Функциональность системы основана на базовых операциях. Предоставляя пользователю набор базовых операций, администратор системы определяет тем самым его доступ. Базовые объекты определяют объектно-ориентированный взгляд на систему. Появляется возможность управлять доступом к объектам, определяя права на их методы, которыми являются элементарные операции. Каждая базовая операция использует какой-либо из методов базового объекта (т.е. какие-либо элементарные операции). Таким образом, доступ пользователя в системе складывается из его прав на базовые операции и объекты.
Оргштатный элемент | Это “обезличенный” пользователь системы, для которого проводится работа по управлению доступом к операциям и объектам системы. Затем реальному пользователю выдается право быть представленным в системе в виде оргштатного элемента. |
Модуль | Это характеристика клиентской части системы, физически объединяющая вызовы базовых операций. Одна базовая операция может входить в несколько модулей. |
Обобщенный объект | Логическое объединение группы базовых объектов. Это иерархическая структура, “листьями” которой являются базовые объекты, а “ветвями” — обобщенные объекты различного уровня “вложенности”. При управлении доступом администратор системы манипулирует обобщенными объектами наравне с базовыми объектами. |
Обобщенная операция | Логическое объединение группы базовых операций. Это иерархическая структура, “листьями” которой являются базовые операции, а “ветвями” — обобщенные операции различного уровня “вложенности”. При управлении доступом администратор системы манипулирует обобщенными операциями наравне с базовыми операциями. |
Оргштатная структура | Логическое объединение группы оргштатных элементов. Это иерархическая структура, “листьями” которой являются оргштатные элементы, а “ветвями” — оргштатные подразделения различного уровня “вложенности”. При управлении доступом администратор системы манипулирует оргштатными структурами наравне с самими оргштатными элементами. |
Центральное место в ядре системы занимает учетная система. В ее основе — абстрактная модель бухгалтерского учета с основополагающим принципом двойной записи. Основными объектами системы учета являются:
- конто;
- показатель;
- журнал;
- проводка.
В терминах бухгалтерской модели конто и показатели являются абстрактными счетами учетной системы.
Конто предназначен для аналитического учета однородных банковских операций с использованием механизма проводок. На внешнем (прикладном) уровне конто соответствуют лицевые счета (балансовые, внебалансовые, депо), кассовые символы, бюджетные символы и другие регистры аналитического учета.
Показатель предназначен для синтетического учета, для группировки аналитики при формировании отчетности и анализа. На внешнем уровне показателям соответствуют счета I—II порядков, разделы Плана счетов ЦБ, символы отчетности различных форм.
Структура показателей и конто строится на основе иерархии неограниченного уровня вложенности.
Журнал — это объединение показателей, имеющих один экономический смысл.
Примерами журналов могут быть главы Плана счетов ЦБ (“Балансовые счета”, “Внебалансовые счета”, “Счета депо”), список символов кассовой отчетности, формы отчетности по Инструкции № 17 и т.д.
Проводки формируют состояния конто — хранящиеся в системе обороты по дебету и кредиту, остаток. Состояния показателей рассчитываются на основе их отношения к конто.
При выполнении операций над проводками фиксируются время ввода, планирования, подтверждения планирования и фактического учета. При помощи этого механизма ведется фактический и позиционный учет операций. Для реализации алгоритмов учетной системы используются процедуры и таблицы сервера данных. В состав модулей системы учета входят модули клиентской части, которые обеспечивают диалоговый режим создания и применения счетов. В основном это модули технолога системы, которые позволяют:
- осуществлять ведение структуры объектов учетной системы;
- организовывать доступ для проведения аудита ко всем счетам и проводкам системы учета независимо от их прикладного применения.
Интерфейс модулей технолога представляет журналы, показатели, конто и проводки в терминах прикладной области.
Форма хранения документов и форматированный документ позволяют автоматизировать обработку посредством выборки данных, которые передаются в учетную систему и в прикладную систему (для компоненты поддержки документооборота).
При обработке документа транзитная система формирует обращения к учетной системе — как при выполнении операции, так и при ее откате. В этой системе присутствуют правила учета, которые определяют состав проводок и их атрибуты, а также фонд счетов, переводящий внешнее представление счетов в идентификаторы конто учетной системы. Кроме того, в транзитной системе хранится история движения документа, фиксирующая переходы документа из одной стадии обработки в другую. Транзитная система получает результаты выполнения операций учетной системой и передает их прикладной системе.
Прикладная система
Компонента поддержки документооборота — самая важная в прикладной системе. В ее состав входят: документ, картотека и портфель.
Взгляд на систему обеспечения документооборота достаточно подробно освещен в одноименном разделе статьи В.Чаусова “Концептуальное построение банковской системы” [5].
В нашей статье понятие “папка” заменено на понятие “картотека”. Картотеки (в отличие от папок) имеют некоторые ограничения, в частности:
- их количество в системе конечно;
- пользователи системы не могут создавать и уничтожать их;
- разрешенные перемещения документа из одной картотеки в другую заранее прописываются технологом системы;
- обращение к транзитной системе для инициирования проводок в системе учета происходит при перемещении документа из картотеки в картотеку.