Общие сведения об архитектуре ИС

Информационная система управления, создаваемая на основе TRIM, в общем случае состоит из следующих составляющих:

  • сервера данных,
  • сервера приложений,
  • Интернет-сервера,
  • клиентской части (клиента).

В составе системы может быть только один сервер данных, один или несколько серверов приложений, один Интернет-сервер (либо Интернет-сервер может отсутствовать), и любое количество клиентов. 

Сервер данных строится на основе системы управления базами данных (СУБД). СУБД содержит в своем составе базу данных (БД) и программные средства для управления БД, доступа к данным, архивации, восстановления и защиты данных. В качестве сервера данных системы TRIM используются Microsoft SQL Server,  Oracle Database или любая другая СУБД, совместимая со стандартом SQL-92 и имеющая клиентскую часть для доступа по технологии ADO (например, PostgreSQL).

Сервер приложений обеспечивает выполнение общих для всех рабочих мест функций TRIM, а также наиболее ресурсоёмких функций. Вынесение этих функций на сервер приложений позволяет разгрузить клиентскую часть системы и снизить требования к рабочим местам пользователей. Программные модули TRIM на сервере приложений функционируют в автоматическом режиме под управлением операционной системы и обращаются к серверу данных по мере необходимости. Результаты работы сервера приложений используются клиентской частью системы TRIM.

Интернет-сервер обеспечивает возможность работы в системе тех пользователей, на рабочих местах которых система TRIM не установлена. Посредством Интернет-сервера пользователи получают доступ к функциям TRIM с помощью программ навигации по Интернет (браузеров).  Для Интернет-сервера в глобальной сети выделяется фиксированный IP-адрес и зарегистрированное доменное имя. Пользователь, зная это доменное имя, с помощью браузера получает доступ к Интернет-серверу и может работать с функциями TRIM через Web-интерфейс. Web-интерфейс TRIM имеет меньше возможностей и ограниченный набор функций по сравнению с интерфейсом, обеспечиваемым клиентскими модулями системы, зато предъявляет меньше требований и не требует установки клиентских модулей TRIM на рабочем месте пользователя. Таким же образом может быть организована работа пользователей в рамках локальной сети организации (Интранет), если эта сеть построена на основе принципов сети Интернет.

Клиентская часть состоит из прикладных модулей TRIM, обеспечивающих функциональность системы и ее интерфейс с пользователем, системных модулей, обеспечивающих работоспособность TRIM, а также драйверов, отвечающих за взаимодействие этих модулей с СУБД.

Все составляющие информационной системы могут быть установлены на различных компьютерах, объединенных в локальную вычислительную сеть (ЛВС), через которую они обмениваются данными.

Узлы и распределенная база данных

Если канал связи между компьютерами, на которых установлены составляющие TRIM (сервер данных, сервер приложений, клиент), имеет низкое качество, и задержка обмена данными между компьютерами значительно замедляет работу пользователя в системе, либо если канал прямой связи между компьютерами отсутствует — тогда всю систему TRIM разделяют на несколько подсистем, которые называются «узлами». Совокупность узлов и каналов связи между узлами называется «сетью TRIM».

Каждый узел сети TRIM имеет в своем составе сервер данных, один или несколько серверов приложений, а также одну или несколько клиентских частей системы. Каждый узел сети TRIM состоит из нескольких компьютеров, объединенных в ЛВС, на одном из которых установлен сервер данных, ещё на одном (или нескольких)  — сервер приложений (или сервера приложений), а на других могут выполняться клиентские части системы. В предельном случае узел может состоять из одного компьютера, на котором выполняются обе серверные и клиентская части.

Каждый узел имеет свою базу данных (БД). В этом случае вся БД системы распределена по множеству узлов, входящих в состав системы — поэтому говорят о распределенной БД.

Сеть TRIM строится по топологии «звезда». Это значит, что среди всех узлов выделяется один, который называется «центральным узлом» или «сервером сети TRIM» (не путать с сервером данных). Остальные узлы должны иметь каналы связи с центральным узлом и не должны иметь их между собой (или эти каналы существуют, но не используются в работе TRIM). Эти узлы называются «подчиненными узлами» или «филиалами», как правило, они удалены на большие расстояния от центрального узла.

Каждый компьютер на данном узле имеет on-line-канал связи с локальной БД своего узла, поэтому пользователи комфортно работают в системе, даже если канал связи с центральной БД временно недоступен. «Проблемные» же каналы связи с центральным узлом задействуются только на синхронизацию данных — обмен данными между узлами путем передачи пакетов данных с одного узла на другой. Эти пакеты (репликации) обеспечивают синхронизацию информации в распределенной БД сети TRIM, находящейся на разных узлах. Система репликаций поддерживает выборку определенной части данных для каждого узла. При этом все изменения данных, внесенные на любом узле, после завершения репликации будут доступны на всех других узлах.

Для передачи пакетов используются промышленные почтовые системы и сетевые технологии. В TRIM реализована поддержка следующих методов и протоколов: файловый метод, SMTP-клиент, POP3-клиент, FTP-клиент, а также предусматривается интерфейс для использования внешних методов путем вызова приложений командной строкой соответствующего метода. Для методов, базирующихся на интернет-протоколе IP, обеспечена возможность автоматического установления Windows DialUp-соединения, что позволяет использовать каналы на основе телефонной сети, сотовой и спутниковой связи.

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

Любое изменение в конфигурации сети TRIM может происходить только на центральном узле сети. Поэтому при создании сети TRIM в первую очередь конфигурируется архитектура центрального узла, после этого вносятся данные о подчиненных узлах. Для включения нового подчиненного узла администратор сети TRIM формирует конфигурационные файлы для него на центральном узле. Они доставляются на подчиненный узел, и с их помощью специальная утилита, входящая в состав TRIM, настраивает программное обеспечение узла для работы с заданным центральным узлом. 

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

Ограничение доступа к данным на уровне СУБД заключается в ограничении прав пользователя на доступ к объектам БД — таблицам, запросам, хранимым процедурам. Оно реализуется на сервере данных с помощью специализированного ПО СУБД и на клиентской части с помощью настройки доступа к СУБД.

Ограничение доступа к данным на уровне СУБД является возможным, но не обязательным для работы клиентской части системы TRIM. Оно дает дополнительную защиту от некорректных действий пользователя на уровне СУБД.

Ограничение доступа к данным на уровне клиента выполняется прикладными модулями клиентской части системы TRIM на основе настроек, хранящихся в БД TRIM. Настройки для ограничения доступа к данным на уровне клиента могут быть сделаны в модуле «TRIM-Администратор» и в специализированном модуле настройки прав доступа TRIM.

Ограничение доступа к данным на уровне клиента позволяет осуществить следующие ограничения по доступу пользователя к TRIM:

  • ограничение по работе с модулями,
  • ограничение по доступу к данным узла сети TRIM (профиль узла),
  • ограничение по доступу к данным (профиль пользователя) и функциям системы (роли пользователя) для пользователя TRIM,
  • привязка пользователя TRIM к штатной единице и персональным данным,
  • ограничение по элементам управления и функциям системы (настройка интерфейса пользователя).

Ограничение по работе с модулями TRIM заключается в том, что каждый пользователь может запускать на выполнение только те модули, которые ему разрешены. Функции, выполняемые запрещенными к запуску модулями, остаются недоступными. Ограничение по доступу к данным узла сети TRIM (профиль узла) заключается в том, что в БД подчиненного узла попадают только те данные, которые назначены этому узлу администратором на центральном узле.

Ограничение по доступу к данным пользователя TRIM (профиль пользователя) заключается том, что пользователю доступны только определенные действия с некоторыми объектами TRIM. Пользователь не может выполнить над объектом TRIM действия, которые не входят в его профиль.

В системе TRIM доступны профили пользователя для следующих объектов TRIM:

  • документы (все операции в модуле «TRIM-Документооборот»),
  • фирмы и склады (создание и редактирование документов МТС, складские операции, бюджетные операции),
  • материально-технические ресурсы — МТР (просмотр и обработка документов с определенными МТР или группами МТР),
  • разделы БД TRIM.

Ограничение по доступу к функциям для пользователя TRIM (роли пользователя) заключается том, что каждому пользователю TRIM доступны только определенные функции, которые он может выполнять в системе TRIM. Пользователь не может выполнить функцию в системе TRIM, если она не включена в одну из ролей, назначенных этому пользователю. При этом некоторые назначенные пользователю функции могут быть доступны только для определенных объектов системы TRIM (здесь учитывается сочетание профиля и ролей пользователя).

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

  • согласование и утверждение документов (операции в модуле «TRIM-Документооборот»);
  • согласование и утверждение документов МТС (торгово-закупочные и складские операции);
  • планирование работ и редактирование план-графика работ;
  • согласование и утверждение ремонтных ведомостей и разовых работ;
  • регистрация и обработка дефектов, планирование работ по устранению дефектов;
  • ведение журналов параметров и счетчиков наработки;
  • действия в нарядно-допускной системе.

Создание и настройка профилей и ролей пользователей выполняется администратором системы в модуле «TRIM-Администратор». Подключение профилей пользователя происходит отдельно в каждом прикладном модуле TRIM.