Архитектура МИС "ЕМСИМЕД"

В основе архитектуры МИС "ЭМСИМЕД" лежит многоуровневая схема прикладных программ баз данных.


Сервер баз данных - Microsoft SQL 2000/2005 под управлением ОС MS Windows 2003. Сама база хранит данные системы, триггеры, сохраненные процедуры и SQL-запросы, обеспечивающие доступ к этим данным и их целостность.

Выполнение СOM+ модулей системы на COM+ сервере (под управлением MS Windows 2000 или выше) обеспечивает MS DTC-сервис. Он также руководит SQL-транзакциями.

Архитектура системы представлена следующими COM+ модулями:

  • диспетчер SQL-Запросов обеспечивает доступ к запросам, которые сохраняются в БД, вызывает SQL-сервер для их выполнения и передает результаты в виде ADO Recordset вызывающему модулю.
  • прикладной сервис "ЭМСИМЕД" выполняет аутентификацию пользователя, поддерживает сессию пользователя и авторизацию при доступе к ресурсам системы, а также вызывает диспетчер SQL-Запросов.

Благодаря использованию COM+ удается избежать блокирования транзакций со стороны сервера БД и обеспечивать уровень доступности до 99.995%.

Сокет-сервер системы реализован как Windows-сервис. Осуществляя поддержку соединения с клиентом в сетевой среде TCP/IP, он обеспечивает получение запросов и передачу данных между прикладным сервисом "ЭМСИМЕД" и клиентской частью. Также сокет-сервер может сериализовать или десериализовать данные в формате XML или ADTG и зашифровать\дешифровать трафик согласно проколу SSL. Отдельно стоит отметить возможность мониторинга трафика клиентских соединений и ведение протокола запросов.

Web-сервис COM+ реализован как WEB XML-сервис ASP.NET. Он используется для интеграции с внешними системами, такими как "1С: Предприятие", и обеспечивает:

  • получение запросов и передачу данных между HTTP-Клиентом и прикладным сервисом "ЭМСИМЕД"
  • сериализацию / десериализацию данных в формат XML
  • поддержание сессии клиента на Web-сервере


На рабочем месте сотрудника ЛПУ работает клиентская версия "ЭМСИМЕД" и модуль обновления версий. Клиентская версия"ЭМСИМЕД" обеспечивает пользователя возможностью выполнения всех операций по введению данных в систему, их первоначальной проверке на допустимость и непротиворечивость, передаче их на сервер, а также получению информации с сервера данных и ее представлению в удобном для просмотра и анализа виде.

Подсистема соединения выполняет:

  • поддержку соединения (в том числе отдаленного) с сервером соединений "ЭМСИМЕД"
  • сериализацию / десериализацию данных
  • шифрование/дешифрование трафика
  • принудительное управление клиентскими SQL-транзакциями.

Мобильное устройство работает под ОС Windows Mobile 5.0 или выше. Установленный на нем MS SQL 2005 Mobile, вместе с локальной базой данных, разрешает проведение автономной работы отдаленным пользователям при условии отсутствия связи с основным сервером данных. Синхронизация данных с основной БД выполняется по запросу пользователя.

Клиентская программа для мобильного устройства выполнена в виде основного модуля-загрузчика и набора программных модулей, обновление которых может выполняться отдельно. Коммуникации с Web-сервисом "ЭМСИМЕД" осуществляются по протоколу HTTP через соединение Wi-Fi или GPRS.

Если к компьютеру подключено лабораторно-диагностическое оборудование, и это оборудование осуществляет обмен данными через COM-Порт в определенном формате, то на такой компьютер может быть установлен монитор лабораторных устройств вместе с соответствующими драйверами устройств. Драйверы представляют собой COM-Объекты, которые непосредственно осуществляют коммуникацию с оборудованием через интерфейс RS-232, превращают переданные им данные в формат, общий для всех устройств, и передают их системному монитору. Монитор лабораторных устройств действует как клиент "ЭМСИМЕД", передавая данные к серверу "ЭМСИМЕД" через сервер подключений.

На сервере данных DICOM (PACS) сохраняется база данных DICOM (за исключением изображений) и работает MS SQL сервер. Прикладной сервис DICOM реализован как Windows-сервис, который выполняет запросы к БД DICOM и осуществляет доступ к хранилищу изображений, расположенному на том же компьютере или как сетевой ресурс. Клиент "ЭМСИМЕД" взаимодействует непосредственно с DICOM-Сервером "ЭМСИМЕД" или с другим DICOM-сервером.

Бизнес-логика системы распределена на нескольких уровнях и оптимизирована с точки зрения минимизации трафика между клиентскими модулями и сервером подключений, или web-сервером. Основная ее часть реализована в виде триггеров, сохраненных процедур и SQL-запросов, которые выполняются на SQL-сервере.

Подсистема защиты "ЭМСИМЕД" может выполнять следующие функции:

  • аутентификацию пользователей при входе в систему с помощью хеширования пароля или методом Challenge-Response с помощью клиентских сертификатов
  • криптографическая защита информационного трафика между сокет-сервером "ЭМСИМЕД" и клиентской частью программы
  • хранение личных данных пациентов в БД в зашифрованном виде
  • авторизованный запуск прикладного сервиса "ЭМСИМЕД" администратором защиты
  • генерацию RSA-Ключей и управление клиентскими сертификатами
  • ведение защищенного журнала выполненных пользователем операций
  • размежевание полномочий пользователей и авторизация их доступа к функциям системы согласно полномочиям.

Подсистема реализована с использованием средств защиты Aladdin eToken Pro, Alladin HASP HL и стандартных средств Windows. Она состоит из набора экранных форм и функций, которые используются на равных как клиентской, так и серверной частями системы "ЭМСИМЕД".

Существуют технические требования, выставляемые к оборудованию, на котором будет установлена МИС «ЭМСИМЕД» в предприятии.