Научная статья на тему 'Создание сервисов для работы с медицинскими документами и разработка мобильного приложения на платформе Windows Phone для мониторинга жизненно важных показателей здоровья пациента'

Создание сервисов для работы с медицинскими документами и разработка мобильного приложения на платформе Windows Phone для мониторинга жизненно важных показателей здоровья пациента Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
367
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СЕРВИСЫ / МЕДИЦИНСКИЙ ДОКУМЕНТ / МОНИТОРИНГ / МОБИЛЬНОЕ ПРИЛОЖЕНИЕ / SERVICES / MEDICAL DOCUMENT / MONITORING / MOBILE APPLICATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Носков Илья Игоревич, Пономарев Алексей Анатольевич

Рассмотрено современное состояние развития мобильных информационных систем, производящих мониторинг состояния здоровья пациента. Предложена модель обработки и хранения медицинских документов. Выделена задача создания сервисов для работы со всеми типами медицинских документов. Предложен способ создания кроссплатформенной библиотеки, позволяющей взаимодействовать с разработанными сервисами. В качестве варианта использования приложения с данной библиотекой рассмотрена разработка мобильного приложения на платформе Windows Phone для мониторинга жизненно важных показателей здоровья пациента, таких как пульс и кровяное давление, работающее с документами «Кровяное давление» и «Пульс» в формате

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Носков Илья Игоревич, Пономарев Алексей Анатольевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

OpenUMS.The paper considers the problem of patient’s remote health monitoring with the help of mobile device that has Internet access. The central objectives of the work are the programming of services and cross-platform library for them that is used to handle with the medical records and the development of the mobile application for hypertensive patients which allows doctor in charge to monitor the patient’s blood pressure and pulse remotely. The paper introduces the results of theoretical research and state of the practice of the developed tools. The requirements for application, services and libraries being developed have been defined. The real-world value of the given article lies in the efficiency of upgrading doctor work and medicine quality in general.

Текст научной работы на тему «Создание сервисов для работы с медицинскими документами и разработка мобильного приложения на платформе Windows Phone для мониторинга жизненно важных показателей здоровья пациента»

УДК 004.42;004.75

СОЗДАНИЕ СЕРВИСОВ ДЛЯ РАБОТЫ С МЕДИЦИНСКИМИ ДОКУМЕНТАМИ И РАЗРАБОТКА МОБИЛЬНОГО ПРИЛОЖЕНИЯ НА ПЛАТФОРМЕ WINDOWS PHONE ДЛЯ МОНИТОРИНГА ЖИЗНЕННО ВАЖНЫХ ПОКАЗАТЕЛЕЙ ЗДОРОВЬЯ ПАЦИЕНТА

И.И. Носков, А.А. Пономарев

Томский политехнический университет E-mail: noskovii@mail.ru

Рассмотрено современное состояние развития мобильных информационных систем, производящих мониторинг состояния здоровья пациента. Предложена модель обработки и хранения медицинских документов. Выделена задача создания сервисов для работы со всеми типами медицинских документов. Предложен способ создания кроссплатформенной библиотеки, позволяющей взаимодействовать с разработанными сервисами. В качестве варианта использования приложения с данной библиотекой рассмотрена разработка мобильного приложения на платформе Windows Phone для мониторинга жизненно важных показателей здоровья пациента, таких как пульс и кровяное давление, работающее с документами «Кровяное давление» и «Пульс» в формате OpenUMS.

Ключевые слова:

Сервисы, медицинский документ, мониторинг, мобильное приложение.

Введение

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

Использование мобильных технологий в лечении определенных видов болезней является не только оправданным и важным, но и жизненно необходимым.

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

Носков Илья Игоревич,

студент кафедры автоматики и компьютерных систем Института кибернетики ТПУ. E-mail: noskovii@mail.ru Область научных интересов: медицинские информационные системы, разработка мобильных приложений, разработка сервисов, облачные вычисления.

Пономарев Алексей Анатольевич, канд. техн. наук, доцент кафедры автоматики и компьютерных систем Института кибернетики ТПУ. E-mail: boss@aics.ru Область научных интересов: разработка распределенных информационных систем, онтологий, применение стандартов BPEL, системы промышленной безопасности.

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

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

Состав сервисов

При проектировании сервисов для разрабатываемой системы на начальном этапе были выделены основные функции, которые данные сервисы должны предоставлять своим клиентам:

• авторизация пациента в системе;

• получение группы документов;

• загрузка документа по какому-либо шаблону;

• загрузка документа;

• сохранение документа.

Разработка данных сервисов производилась с помощью фреймворка WCF (Windows Communication Foundation), так как он делает возможным построение безопасных и надёжных транзакционных систем через упрощённую унифицированную программную модель межплатформенного взаимодействия [2]. Данная технология является наиболее удобной и подходящей для разработки, так как остальные части разрабатываемой системы написаны тоже с применением технологии . NET на языке C#. С помощью настольной версии и ее веб -части лечащий врач может в любое удобное для него время просмотреть свежие данные о состоянии здоровья своего пациента и, при необходимости, изменить лечение или дать какие-либо рекомендации.

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

Данные сервисы производят выборки из базы данных о пациенте либо записывают в нее новые, пришедшие от пользователя документы, тем самым обновляя ее и храня самые актуальные данные о состоянии здоровья пациента.

Разработка кроссплатформенной библиотеки для взаимодействия с сервисами на основе Portable Class Library

В качестве шаблона проекта для написания библиотеки для взаимодействия с сервисами был выбран Portable Class Library, так как проект Переносимая библиотека классов позволяет выполнять построение переносимых сборок, которые работают без изменений на платформах .NET Framework, Windows 8, Silverlight, Windows Phone 7 и Xbox 360. Проект Переносимая библиотека классов поддерживает подмножество сборок из этих платформ и предоставляет шаблон Visual Studio, с помощью которого можно выполнять построение сборок, запускающихся на этих платформах без внесения изменений [3]. Если не использо-

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

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

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

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

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

Разработка мобильного приложения

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

Для разработки мобильного клиента была выбрана операционная система Windows Phone, так как она является мощной и современной операционной системой, набирающей популярность. Приложения для неё создаются на управляемом . NET языке, что позволяет программисту использовать все преимущества данной исполняющей среды. Так как остальные части системы также разработаны с помощью технологии .NET, то выбор данной операционной системы для мобильного приложения позволит легче интегрировать и согласовать работу с остальными компонентами существующей системы. Архитектура данного приложения строилась в соответствии с принципами шаблона проектирования MVVM (Model-View-ViewModel), который используется для разделения модели и её представления, что является необходимым, так как позволяет изменять их отдельно друг от друга [4]. MVVM удобно использовать вместо классического MVC и ему подобных в тех случаях, когда в платформе, на которой ведется разработка, присутствует «связывание данных», которое является встроенным механизмом в технологии Silverlight, с помощью которой и происходит разработка мобильных приложений для операционной системы Windows Phone.

Для описания состава медицинских данных был использован формат OpenUMS. Применение этого формата для описания медицинского документа обусловлено необходимостью передачи сведений не только о содержательной части документа, но и о его внешнем представлении [5].

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

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

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

Для работы с документами «Кровяное давление» и «Пульс» было разработано 2 класса, которые являются обертками над базовым классом документа и предоставляют программисту возможность работы с данными этих документов. Приложение локализовано на два языка: русский и английский.

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

private Document GetBloodPressureDocument(int visitId) {

using (var sqlProvider = CreateSqlProvider()) {

sqlProvider.SetParameter("@VisitId", visitId);

sqlProvider.ExecuteQuery(

@"SELECT Systolic blood pressure,

Distolic_blood_pressure,

Visits.DATE_VISIT,

FROM Result blood pressure

INNER JOIN Visits ON Visits.IDV = Result_blood_pressure.IDV WHERE Result_blood_pressure.IDV = @VisitId");

if (sqlProvider.HasRows) {

var r = sqlProvider.FirstRow; var doc = new Document(); doc.SetProperty("SystolicPressure", r.Field<float?>("Systolic blood pressure"));

doc.SetProperty("DistolicPressure", r.Field<float?>("Distolic blood pressure")); doc.SetProperty("Date", r.Field<DateTime?>("DATE_VISIT"));

return doc; }

else {

return null; }

}

}

На рис. 1 приведен внешний вид приложения при запуске - пользователю предлагается ввести свою фамилию и PIN-код для авторизации в приложении.

Рис. 1. Страница авторизации

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

Рис. 2. Создание нового документа

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

Серия Информационные технологии и системы управления

CARDIO ^

graph log

Рис. 3. График, построенный на основе имеющихся данных о показателях здоровья

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

Выводы

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

СПИСОК ЛИТЕРАТУРЫ

1. Никитин М. Мобильные технологии в медицине начинают с охраны // CNews. 2012. URL: http://www.cnews.ru/reviews/free/publichealth2012/articles/articles8.shtml (дата обращения: 14.04.2013).

2. Молчанов В.В. Введение в WCF Web Service // Практика программирования на С# для Windows и Web в Microsoft Visual Studio. 2011. URL: http://wladm.narod.ru/C_Sharp/wcfservice.html (дата обращения: 15.04.2013).

3. Межплатформенная разработка с помощью .NET Framework // Руководство по разработке для .NET Framework. 2013. URL: http://msdn.microsoft.com/ru-ru/library/gg597391.aspx (дата обращения: 17.04.2013).

4. Пугачёв С., Павлов С., Сошников Д. Разработка приложений для Windows Phone 7.5. - СПб.: БХВ-Петербург, 2012. - 384 с.

5. Формат описания медицинских данных OpenUMS. URL: http://www.openums.ru/ (дата обращения: 18.04.2013).

Поступила 30.04.2013 г

i Надоели баннеры? Вы всегда можете отключить рекламу.