FHIR для технических лидеров Health IT-проектов

FHIR для технических лидеров Health IT-проектов

24 Oct 2018
954
Прослушать

Автор статьи Николай Рыжиков, технический директор компании Health Samurai
и архитектор платформы для разработки FHIR-first приложений - Aidbox

Хочу представить FHIR (Fast Healthcare Interoperability Resources) директорам и техническим лидерам проектов, заинтересованным в современных информационных технологиях в здравоохранении в долгосрочной перспективе.

Коротко о FHIR

  • FHIR — это стандарт обмена медицинскими и околомедицинскими данными между системами, созданный международной организацией HL7. Сейчас он стремительно становится стандартом де-факто.
  • У FHIR мощная общественная, правительственная (США, Австралия) и поддержка таких лидеров IT-индустрии как Epic, Cerner, Apple, Google.
  • У стандарта есть открытое сообщество экспертов по информационным технологиям в медицине. Присоединиться к обсуждениям можно легко прямо сейчас по ссылке: http://health-samurai.info/ecctoruzulip. Также вы можете посещать коннектатоны (практические семинары-конференции) и присоединиться к сообществу FHIR оффлайн.
  • FHIR — это открытый стандарт с коммерческой экосистемой серверов, справочников и других инструментов для быстрой разработки.

Сейчас идёт беспрецедентное внедрение FHIR в индустрию, и есть все основания утверждать, что в следующие 5–10 лет FHIR станет основным IT-стандартом в медицине.

Что такое FHIR с точки зрения технического специалиста?

FHIR — это машиночитаемая спецификация REST-сервера. Можно сказать, что FHIR — это Swagger/OpenAPI в ИТ в медицине. И если Swagger предлагает инструменты общего вида для описания любого REST API, FHIR ушёл на пару шагов вперед и предоставляет вам готовые к использованию информационные модели и рабочую семантику, а также методы расширения моделей данных под ваши конкретные сценарии использования.

Информационная модель — FHIR-данные

FHIR вводит термин Ресурс (Resource) — основная единица значимой информации для передачи и хранения данных. У каждого ресурса есть метка "тип ресурса" (как класс в ООП), которая определяет его структуру и значение. FHIR предлагает более сотни типов ресурсов, разрабатываемых специализированными рабочими группами. Структура ресурса (схема) описывается с помощью StructureDefinition — это машиночитаемое определение структуры, которое может использоваться для кодогенерации и в системах на основе метаданных. Ресурсы разрабатываются с целью покрыть наиболее общие требования к данным, придерживаясь правила 80/20.

Если вы работали в ИТ в медицине какое-то время, то вы понимаете ценность хорошей доменной модели и то, как легко можно допустить в ней ошибку. Вдобавок пользовательские форматы данных без стандартизации создают огромное количество данных и ограничивают свободную передачу информации между системами. Значительная сложность в нашей индустрии кроется в моделировании данных, и FHIR даёт нам хорошие стандартизированные модели данных для работы.

Терминологические справочники

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

Операционная модель — API

FHIR вводит ряд стандартных точек взаимодействия (REST endpoints) для REST-операцией, которые объявляются в CapabilityStatement для динамического обнаружения и имеют предопределённое значение. Это точки взаимодействия для операций CRUD (создание, чтение, обновление, удаление), истории изменений, батчей/транзакций, поиска. Также вы можете расширять FHIR API, создавая пользовательские операции.

Вы можете задать вопрос: "Как я могу использовать FHIR?"

1. Для вдохновения 

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

2. Как открытый API к внешним системам

Если вашей системе необходимо получать данные пациентов, вы можете рассчитывать уже через несколько лет увидеть FHIR API во многих МИС и других источниках данных. Стандарт быстро набирает обороты и уже зарекомендовал себя как технология, которая останется с нами надолго. Внедрение FHIR означает простой способ получения данных, которые вам понадобятся со временем.

3. Как внешний API для вашей существующей системы

Вы можете добавить FHIR API к вашей существующей системе, что обеспечит ей  расширяемость и упростит интеграцию с ней. Если вы разрабатываете МИСоподобную систему, вы также можете интегрироваться в экосистему SMART on FHIR и её магазин приложений, превратив вашу систему в динамическую платформу с большим выбором доступных приложений на ней.

Технически, есть два способа реализации FHIR API на базе существующей системы:

  • Фасад (Facade) — промежуточное посредническое ПО для преобразования ваших внутренних данных и методов в FHIR-ресурсы и операции на лету. Плюс в том, что ваш слой FHIR будет тесно связан с вашей текущей системой и вы сможете повторно использовать её программный код и технологию. Минус в том, что существенную часть FHIR-спецификации для вашей системы вам придётся реализовать с нуля.
  • Адаптер (Adapter) — репликация данных из вашей системы на существующий FHIR-сервер. Обычно такая реализация проще, чем фасадная, поскольку вы отделяете реализацию FHIR от перевода вашей модели данных на FHIR. Однако есть и некоторые требования: ваша система должна уметь предоставлять источник изменений для преобразования и репликации. Адаптер может работать как в одном, так и в обоих направлениях: из вашей системы в FHIR и/или наоборот. Разумеется, двухсторонние интеграции несут в себе сложности, как и любые мульти-мастер системы репликации.

4. Создать нативную FHIR систему

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

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

Однако этот подход не даёт быстрого старта, и за FHIR вам определённо придётся заплатить некоторую цену:

  • Для простых сценариев использования слишком общие FHIR-модели могут потребовать такие умственные и технические накладные расходы, которые того не стоят. Поэтому, если ваша система не очень глубоко уходит в предметную область, вам лучше использовать FHIR просто как источник для вдохновения.
  • Вам придётся инвестировать в обучение и реализацию FHIR. Можно снизить издержки, наняв или сотрудничая с инженерами, которые знают FHIR, а также используя коммерческие и открытые продукты. Мы уверены в том, что экосистема FHIR продолжит расширяться и уменьшит общую стоимость реализации.
  • Для сильно специфичных сценариев использования спецификации FHIR может оказаться недостаточно. Комиссии по разработке FHIR придерживаются правила 80/20 при расстановке приоритетов моделирования наиболее общих сценариев. Ваш частный сценарий возможно на очереди. Однако есть и хорошая новость: вы можете присоединиться к открытому сообществу FHIR и содействовать продвижению ваших сценариев или инициировать их обсуждение. Плохая новость: вам придется подождать окончания этого процесса. И хотя вы можете расширять существующие ресурсы, FHIR закрыт для создания новых ресурсов (т.е. вы не можете сами определять новые типы FHIR-ресурсов). Это ограничение было введено с намерением провести все новые ресурсы через сообщество и обеспечить определенный уровень качества. Однако если вы строите реальную систему и у вас нет времени ждать, то можете использовать платформу Aidbox , которая позволит вам создавать пользовательские ресурсы, которые покроют ваши сценарии.

5. Хуки для Поддержки принятия медицинских решений

Еще один интересный тренд в FHIR — это CDS-хуки. Это спецификация API для вызова системы поддержки принятия решений прямо из рабочего процесса МИС врача посредством триггерных вызовов, которые возвращают релевантные данные и предложения возможных действий, и могут запускать SMART-приложения в рамках МИС. Это бесшовно встраиваемые в рабочий процесс подсказки врачу в оказании помощи, управляемые данными пациента в режиме реального времени через автоматические вызовы соответствующих приложений и информации при каждом взаимодействии с пациентом.

6. Анализ данных на FHIR

Стандартизованная и хорошо задокументированная модель наряду с поддержкой JSON-подобных форматов современными базами данных (PostgreSQL, BiqQuery, Spark) делает FHIR достойным выбором в качестве основы создания аналитики, BI- и AI-систем. FHIR-сервера могут использоваться для агрегации данных из разных источников, а также в качестве хранилища клинических данных.

Мы наблюдаем растущий интерес в индустрии к применению FHIR в аналитике:

Заключение

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

Если у вас есть предложения или вопросы — присоединяйтесь к сообществу FHIR или пишите мне в FHIR-чате на ник nicola или на почту niquola@health-samurai.io. Оригинал статьи на английском

Автор статьи:

Николай Рыжиков, CTO, Health Samurai

Архитектор платформы Aidbox . Активный участник международного сообщества HL7 FHIR, регулярный спикер на FHIR-конференциях и коннектатонах. Лидер трека Storage & Analytics в рамках HL7 FHIR.

niquola@health-samurai.io

Health Samurai

Компания-разработчик популярного Open Source хранилища для медицинских данных Fhirbase и не менее популярной платформы для разработки FHIR-first приложений для здравоохранения Aidbox . Компания занимается Health IT уже более 10 лет и имеет за плечами 15+ успешных проектов для рынков США, Европы и России. https://health-samurai.io 

Присоединяйтесь к нам в Facebook, LinkedIn, Twitter