Организация электронного документооборота в сфере здравоохранения с использованием языка BPEL и форматов Office Open XML

УДК 004.91;004.04

Тап Ван Фам, А.А. Пономарев

Организация электронного документооборота в сфере здравоохранения с использованием языка BPEL и форматов Office Open XML

Предложен новый метод автоматизации электронного документооборота здравоохранения с использованием языка описания бизнес-процессов BPEL и форматов Office Open XML применяемых для форматирования медицинских документов. Подтверждена практическая значимость предлагаемой методологии с применением языков C# и ASP.NET для разработки веб-приложения.

Ключевые слова: электронный документооборот, электронный медицинский документ, язык описания бизнес-процессов BPEL, форматы Office Open XML.

Введение

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

Эффективность управления медицинскими организациями не в последнюю очередь зависит от корректного решения задач оперативного и качественного формирования электронных документов, контроля их исполнения, а также организации их хранения, поиска и использования. В данной статье рассматривается новый способ решения задачи автоматизации электронного документооборота в сфере здравоохранения. В предлагаемой концепции рассматривается вопрос использования стандарта BPEL (Business Process Execution Language [1]) для управления бизнес-процессами при участии различных специалистов, работающих с разрозненными медицинскими документами, имеющими форматы Office Open XML [2, 3].

Согласно исследованиям [4] большинство существующих медицинских информационных систем (МИС) включает в себя многофункциональное программное обеспечение, ориентированное на организацию и автоматизацию электронного документооборота. При этом каждый производитель использует собственные методы и средства для решения задач.

Рассматривая МИС как возможность упорядочить хранение и доступ к медицинской информации, неизбежны аналогии с уже получившими широкое распространение системами электронного документооборота (СЭД).

На мировом рынке СЭД присутствуют как всемирно известные многопрофильные IT-компании, так и относительно малоизвестные фирмы. Разработкой приложений в этой области занимаются сотни компаний, к наиболее известным из которых относятся ACS Software, Action Technologies, Documentum, Lotus Development, Microsoft и др. [5].

Первые российские разработки в этой области появились еще в середине 90-х годов. У истоков рынка стояли компании «Интертраст», Cognitive Technologies, «Оптима» и др. Их развитие шло на фоне бесчисленных попыток самостоятельной автоматизации работы с документами, предпринятых штатными IT-специалистами этих организаций. Большинство таких попыток были не очень удачными. В итоге компании начали доверять работу по автоматизации документооборота профессионалам, что и дало старт рынку СЭД. Большинство российских систем перешло на новый технологический уровень от систем автоматизации делопроизводства до полноценных СЭД за счет поддержки современной технологии Workflow [6].

В сложившейся ситуации одной из основных причин, сдерживающих развитие компьютеризации медицины в РФ, является отсутствие стандартизации и информационной совместимости разработанных систем. Данная ситуация является следствием невнятности государственной политики в сфере медицинских информационных технологий и отсутствия систематизированной информации о существующих системах, их сравнительных характеристиках, специфике использования и т.д. [7].

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

В СЭД за последние несколько лет проявляются определенные технологические изменения. Например, на смену СЭД с двухзвенной архитектурой типа «клиент-сервер» сейчас приходят системы с трехзвенной архитектурой. Такие системы гораздо проще интегрировать с другими корпоративными приложениями через API-интерфейс [5].

В настоящее время основным слоем интеграции служит преимущественно API-интерфейс, обеспечиваемый единственным поставщиком инфраструктуры управления корпоративным содержимым. Однако в будущем предполагается перейти от интеграции через АР1-интерфейсы к интеграции через веб-сервисы на основе связи через XML-сообщения, использующие системно-независимые словари и протоколы. Это позволит исключить зависимость предприятия от единственного вендора, хотя и потребует создания новых стандартов [5].

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

Перечень существующих на рынке систем автоматизации электронного документооборота _в здравоохранении_

Наименование системы Специализация Архитектура Интеграция с бизнес-процессами Поддержка Office Open XML

АМУЛЕТ Автоматизирует работу крупного ЛПУ Клиент-сервер Интегрирует с офисными приложениями, но не поддерживает форматы Office Open XML для формирования документов

АРТЕМИДА Предназначена для комплексной автоматизации деятельности ЛПУ Клиент-сервер

ИНТЕРИН Представляет собой интегрированную среду, что позволяет обеспечить полную автоматизацию всех служб медицинского учреждения Трехуровневая архитектура Может быть интегрирован прикладной пакет MS Office, не поддерживает форматы Office Open XML

КОНДОПОГА Автоматизирует работу медицинского учреждения Клиент-сервер Интегрирует с MS Office 97, не поддерживает форматы Office Open XML

АВРОРА Представляет собой готовое решение по полной автоматизации деятельности врача, частной клиники, муниципального лечебного учреждения Трехзвенная архитектура с поддержкой концепции сервис-ориентированной архитектуры Использует язык описания бизнес-процессов ВРЕЬ для моделирования потока исполнения задач Интегрирует с MS Office 2007, поддерживает форматы Office Open XML для формирования электронной медицинской карты пациента

Для создания бизнес-процесса разработчику достаточно написать программу, выполнявшую вызов веб-сервисов. Но проблема становится нетривиальной в случае вызова асинхронных бизнес-процессов. Сразу встает ряд непростых вопросов:

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

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

- как параллельно вызвать веб-сервисы и т.д.

Для решения таких вопросов предлагалось множество механизмов, которые в той или иной степени решали эти проблемы. Но неизбежно каждый из них решал их по-своему и вынуждал организации привязываться к конкретным поставщикам программного обеспечения. Универсальным решением станет применение стандарта BPEL, предназначенного для решения этой проблемы.

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

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

BPEL - универсальный язык для описания алгоритма выполнения бизнес-процессов. Язык часто рассматривается как ключевая составляющая сервис-ориентированной архитектуры приложений. Действительно, стандарт BPEL позволяет эффективно управлять вызовами сервисов и, в особенности, удобен при работе с веб-сервисами [8]. Концепция такой архитектуры с использованием языка BPEL предоставляет широкие возможности интегра-ции разнородных информационных систем.

Примером такой системы является СЭД «Аврора» компании UMSsoft, занимающейся разработкой программных продуктов для здравоохранения [9]. Комплексная система «Аврора» предоставляет свою функциональность в виде веб-сервисов. Ядро системы обеспечивает исполнение бизнес-процессов, описанных на языке BPEL, а также интеграцию с имеющимися сервисами и службами других поставщиков.

Преимущества предлагаемого решения по управлению и автоматизации электронного документооборота в сфере здравоохранения:

- объединяет разрозненные медицинские данные из разнородных информационных систем;

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

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

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

Модель обслуживания пациента

BPEL-процесс создается с помощью специализированных графических редакторов, которые позволяют моделировать потоки работ [10]. В рамках работы рассматривается типовая модель обслуживания пациента, которая описывает основные этапы плана лечения пациента с момента записи на прием до постановки диагноза и назначения лечения. На рис. 1 показан процесс «записи пациента на прием» модели обслуживания пациента, построенной в среде Eclipse BPEL.

Модель обслуживания пациента

--Запись пациента на прием -

Ожидать новую заявку

Передать вход.ые переде дл, вызова веб-сер.иса

Вызвать внешнюю функцию (веб-сервис) *

Передать полученный результат функции

I

Вернуть результат

Рис. 1. Описание BPEL-процесса «записи пациента на прием» в модели обслуживания пациента

В следующем листинге приведен фрагмент описания этого же BPEL-процесса в текстовом виде.

Листинг. Описание BPEL-процесса «записи пациента на прием» модели обслуживания пациента в текстовом виде

<bpel:process name="AuroraProcess" ... >

<bpel:partnerLinks>

// Описание всех участников в процессе; </bpel:partnerLinks>

<bpel:variables>

// Перечень всех переменных, которые передаются в процесс; </bpel:variables>

<bpel:sequence name="Модель обслуживания пациента"> // Описание логики исполнения бизнес-процессов; <bpel:sequence name="Запись пациента на прием"> <bpel:receive name="Ожидать новую заявку" partnerLink="client" /> <bpel:assign name="Передать входные переменные для вызова веб-сервиса"> // Описание механизма передачи переменных веб-сервису; </bpel:assign>

<bpel:invoke name="Вызвать внешнюю функцию (веб-сервис)" ></bpel:invoke> <bpel:assign validate="no" name="Передать полученный результат функции"> // Описание механизма передачи переменных следующему процессу; </bpel:assign>

<bpel:reply name="Вернуть результат" /> </bpel:sequence>

</bpel:process>

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

- СЭД «Аврора»;

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

- средство потокового ввода данных Microsoft Office Word с использованием форматов Office Open XML.

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

- регистратор заполняет форму с персональными данными пациента с помощью веб-приложения;

- регистратор отправляет данные сервису. В результате новый запрос отправляет введенные данные на сервер исполнения BPEL-процессов (который виден извне как набор веб-сервисов) и тем самым порождает новый экземпляр процесса «записать пациента на прием»;

- BPEL-процесс вызывает внешний веб-сервис, который выполняет задачу «создать новую запись пациента на прием». Функция этого сервиса принимает входные данные от запроса на шаге b) и передает результат следующему процессу;

- формирование очереди, в состав которой входит информация о пациенте, оказанной услуге, времени приема, продолжительности приема и т.д. Более того, к данной записи еще прикреплены шаблоны документов в форматах Office Open XML для заполнения результата обследования.

На рис. 2 показана схема, отражающая взаимоотношения между BPEL-процессом и внешними элементами, которые участвуют в рассматриваемой модели обслуживания пациента.

В качестве исполняемой среды может использоваться сервер бизнес-процессов, такой как ActiveBPEL Engine или Apache ODE. В данной работе используется среда Apache ODE, функционирующая на платформе Apache Tomcat [11].

Порт №1

<Получение>

]

Инициализаци я переменных

<Вызов>

Результат вызова

I

<Ответ>

Порт №2

ВРЕЬ-процесс как веб-сервис Рис. 2. Взаимосвязь между ВРЕЬ-процессом и внешними веб-сервисами

Автоматизация электронного документооборота здравоохранения

С целью автоматизации электронного документооборота в соответствии с представленной выше моделью обслуживания пациента на языках С# и ASP.NET было разработано веб-приложение, которое позволяет пользователям дистанционно и безопасно открывать сессию для доступа к данным. Выбрав конкретного пациента, врач имеет возможность направить его в другой кабинет, например в лабораторию для получения анализа крови или на консультацию к узкому специалисту, и т.д.

На Рис. 3 показана форма для создания новой записи пациента на прием, предоставленная в разработанном приложении.

Рис. 3. Форма для направления пациента на прием

Как только оператор нажимает на кнопку «направить», данные на этой форме передаются серверу Apache ODE, тем самым создается новый экземпляр BPEL-процесса и соответственно в разделе приема медицинской системы документооборота «Аврора» создается запись, к которой прикреплены все необходимые медицинские документы, имеющие форматы Office Open XML, для заполнения полученного результата обследования.

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

Рис. 4. Новая запись пациента в отделе приема

Заключение

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

Спроектирована типовая модель обслуживания пациента в среде исполнения процессов Eclipse BPEL. Выделены участники и их функциональные предназначения в рассматриваемой модели, а также показана схема, отражающая взаимоотношения между BPEL-процессом и выделенными компонентами.

Реализовано веб-приложение, использующее BPEL-процесс в качестве веб-сервиса для автоматизации документооборота в информационной системе «Аврора».

Литература

1. Vasiliev Y. SOA and WS-BPEL: - London: Packt Publishing, 2007. - 316 с.

2. Воутер В. Open XML. Кратко и доступно: пер. с англ. - СПб.: Питер, 2007. -109 с.

3. Фам В.Т. Организация медицинской информационной системы с использованием электронных клинических документов в стандарте HL7 CDA при поддержке форматов Office Open XML / В.Т. Фам, А.А. Пономарев // Известия Томского политехнического университета. - 2010. - Т. 316, № 5. - С. 177-182.

4. Назаренко Г.И. Медицинские информационные системы. Теория и практика / Г.И. Назаренко, Я.И. Гулиев, Д.Е. Ермаков; под ред. Г.И. Назаренко, Г.О. Осипова. -М.: Физматлит, 2005. - 319 с.

5. Мировой рынок систем электронного документооборота [Электронный ресурс]. -URL: http://www.iteam.rU/publications/it/section_64/article_2582/#3 (дата обращения: 19.11.2010).

6. Системы электронного документооборота [Электронный ресурс]. -URL: http://www.edms.su/ analytic/1221 (дата обращения: 19.11.2010).

7. Информационные технологии в медицине [Электронный ресурс] -

URL: http://www.vslines.com/modules/sections/index_op_viewarticle_artid_5.html (дата обращения: 19.11.2010).

8. Айверсон Уилл. Популярные Web-сервисы: практика использования: пер. с англ. - М.: Кудиц-Образ, 2005. - 237 с.

9. Компания UMSsoft [Электронный ресурс]. - URL: http://umssoft.com (дата обращения: 01.03.2010).

10. Eclipse BPEL [Электронный ресурс]. - URL: http://www.eclipse.org/bpel/ (дата обращения: 05.05.2010).

11. Apache Tomcat [Электронный ресурс]. - URL: http://tomcat.apache.org/ (дата обращения: 05.05.2010).

Фам Тап Ван

Аспирант каф. автоматики и компьютерных систем НИТПУ

Тел.: +7-960-975-94-62

Эл. почта: vantap2002@yahoo.com

Пономарев Алексей Анатольевич

Канд. техн. наук, доцент каф. автоматики и компьютерных систем НИТПУ Тел.: (382-2) 41-89-07 Эл. почта: boss@aics.ru

Pham Tap Van, Ponomarev A.A.

Using BPEL and formats Office Open XML to automate the document workflow management in healthcare

The new method of automation of electronic document workflow for the health services with use of language BPEL that intended for the business process management, and formats Office Open XML for supporting the medical documents, is offered. The practical valuable of offered methodology is also demonstrated at use of languages C# and ASP.NET for development the web-application. Keywords: electronic document workflow, electronic medical document, language for describing business processes BPEL, formats Office Open XML.