Разработка регистра доноров костногомозга и гемопоэтических клеток

Контекст

Каждые 20 минут один человек в России узнаёт, что у него рак крови. Способ лечения этой болезни — трансплантация костного мозга и гемопоэтических стволовых клеток, которые есть у каждого из нас.

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

Проблема

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

Задачи

Чтобы решить эту проблему, создали Федеральный регистр доноров костного мозга и гемопоэтических стволовых клеток (далее ФРД КМ и ГСК): объединили в единое информационное пространство регистры доноров костного мозга и автоматизировали процессы оформления документов, подбора доноров и дальнейшей коммуникации с ними. В том числе:

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

Как мы работали

Аналитика и проектирование

На старте проекта мы имели только несколько федеральных документов с общим видением системы: для чего и кому она нужна. Как система должна работать — предстояло спроектировать.

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

slide
slide
slide

Выяснили, что есть 6 видов организаций, которые задействованы в процессе и могут вносить какие-либо сведения в этот регистр. Их сотрудники будут работать через автоматизированные рабочие места (АРМ) в соответствии с видом организации, уровнем прав доступа к функциональным возможностям и данным системы:

  • АРМ сотрудника рекрутингового центра
  • АРМ сотрудника типирующей лаборатории
  • АРМ оператора ФРД КМ и ГСК
  • АРМ сотрудника центра трансплантации
  • АРМ администратора ФРД КМ и ГСК
  • АРМ сотрудника центра заготовки

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

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

slide
slide

Разработка, интеграции и тестирование

ФРД КМ и ГСК — это часть большой медицинской системы ПроМед. Поэтому одна из сложностей проекта — это работа в чужой среде, где есть свои регламенты и требования к разработке.

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

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

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

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

Бизнес-процессы выстроили на стандартных паттернах Model-View-Controller — это метод разделения данных на три компонента так, что изменение каждого может осуществляться автономно.

Как это устроено:

  1. Во фронтенд-части система получает данные, которые ввёл пользователь
  2. Асинхронным запросом данные попадают в контроллер
  3. В контроллере происходит валидация и обработка запроса, после чего — передача в модель
  4. В модели проводится подключение к базе данных, вычислительные процессы и т.д.
  5. Результат передаётся в контроллер
  6. Контроллер передаёт данные обратно во фронтенд-часть
  7. С помощью AJAX (набора техник разработки веб-интерфейсов, позволяющих делать динамические запросы к серверу без видимой перезагрузки веб-страницы) завершается бизнес-процесс

Одна из самых интересных задач — это реализация интеграции с ЕПГУ (Госуслуги). Это нужно, чтобы люди смогли подать заявку на включение в регистр (или исключение из него) прямо в системе Госуслуг, а также следить за своим статусом донора.

Чтобы регистр смог получать данные из ЕПГУ, нужно настроить взаимодействие через СМЭВ — систему межведомственного электронного взаимодействия. Все госорганизации взаимодействуют друг с другом именно так. И здесь есть определённые правила обмена информацией. Связались с разработчиками Госуслуг, согласовали сценарии взаимодействия и реализовали услугу — каждый на своей стороне.

Ещё одна важная задача — это программирование бизнес-процесса подбора доноров. Сам процесс продумали учёные и врачи, а мы всё описали и настроили в системе. Этот этап требовал особой внимательности, ведь ошибка в коде стоит здоровья доноров и реципиентов.

Как устроена работа регистра

Подача донором заявления

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

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

Реализация возможности отфильтровать доноров по периоду присвоения статуса сотрудником рекрутингового центра

Первичная консультация и забор крови

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

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

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

Первичное HLA-типирование в лаборатории

На этом этапе к работе с системой подключается АРМ типирующей лаборатории. Сотрудники лаборатории исследуют кровь и определяют генотип по пяти локусам. Локус — это местоположение определённого гена на хромосоме. Аллели — варианты одного и того же гена, которые различаются по нуклеотидной последовательности.

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

Реализация записи генотипа в системе

Присвоение статуса донора

Это заключительный этап в процессе включения доноров в регистр. К работе с системой подключается АРМ оператора ФРД КМ и ГСК. Сотрудник проверяет корректность всех введённых данных и присваивает гражданину статус донора, используя электронную цифровую подпись.

Донору присваивается международный идентификатор (GRID), который позволяет включить его в WMDA — Всемирную ассоциацию доноров костного мозга.

Реализация доступности разделов системы оператору регистра

Поиск донора для реципиента

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

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

Реализация подбора доноров сотрудником центра трансплантации

Создание заявки на предварительную активацию

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

Реализация создания заявки на активацию донора сотрудником центра трансплантации

К работе с системой подключается АРМ администратора ФРД КМ и ГСК. Задача администратора — связаться с донорами и получить от них ответ: готовы они к донации или нет. В первом случае — гражданин снова отправляется на анкетирование и подтверждающее HLA-типирование. А во втором — донор отклоняется для реципиента, иногда с исключением из регистра (временно или навсегда).

Активация донора

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

Далее — только самый важный процесс: пересадка трансплантата реципиенту и спасение его жизни.

Реализация возможности отфильтровать трансплантаты по периоду добавления результата в систему

Результат

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

Разработанная система позволяет:

  1. Централизовать хранение данных доноров, реципиентов, трансплантатов в единой базе
  2. Оптимизировать процессы поиска неродственных доноров, совместимых по системе HLA с реципиентами, нуждающимися в трансплантации костного мозга или гемопоэтических стволовых клеток
  3. Автоматизировать контроль своевременного отвода доноров с противопоказаниями
  4. Обеспечить взаимодействие между медицинскими организациями

Быть причастным к созданию одного из самых значимых проектов в сфере здравоохранения — наша большая гордость. Федеральное медико-биологическое агентство объявило благодарность специалистам Реактива, которые участвовали в разработке регистра.

Технологии

PHP, JS, PostgreSQL, Java, Miro