Проверка соответствия медицинского SDC устройства требованиям: как обеспечить качество?

29/01/24
Технические статьи
Проверка соответствия медицинского SDC устройства требованиям: как обеспечить качество?

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

Что такое SDC в медицинских приборах

SDC (Service-oriented Device Connectivity) – это стандартизированный протокол интеграции медицинских устройств в единую сеть. Стандарт разрабатывается ассоциацией OR.NET, которая выросла из исследовательского проекта по заказу Федерального министерства образования и науки Германии. В 2020 году стандарт архитектуры стал официальным стандартом ISO/IEEE 11073-20701:2020, и вся группа основных стандартов SDC была одобрена и опубликована Международной организацией по стандартизации (ISO).

До появления протокола SDC медицинские устройства, у которых предусмотрена возможность подключения в сеть, могли подключаться только к своим собственным (проприетарным) сетям. Устройства разных производителей были несовместимы, стандарты совместимости отсутствовали. Это было одним из главных препятствий на пути к оказанию более качественной и эффективной неотложной помощи. Теперь же стандарт SDC обеспечивает безопасное взаимодействие между медицинскими устройствами, а также обмен данными между устройствами и SDC-совместимыми информационными системами в больнице вне зависимости от производителя.

Особенности разработки ПО для медицинских SDC устройств

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

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

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

Выбор аппаратной платформы. Для эффективной работы с протоколом SDC необходимо учитывать требования к производительности оборудования и сети. Интеграция с протоколом в старое оборудование может стать проблемой, так как SDC использует SOAP, XML и шифрование. Правильное нагрузочное тестирование позволит оптимизировать работу системы.

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

Что такое медицинская база данных в SDC стандарте

Любое медицинское устройство, которое подключается в общую информационную сеть и взаимодействует с другими устройствами в сети по протоколу SDC, определяется параметрами, внесенными в базу медицинских данных, которая в стандарте описывается как Medical Data Information Base (MDIB). Данные описательной части включают в себя показатели жизненных функций пациента, параметры сигналов тревоги и их пороговых значений, причем они могут значительно варьироваться в зависимости от требований заказчика (единицы измерения, возрастные группы пациентов, инвазивные или неинвазивные методы сбора показателей и т. п.). Все это представляет собой значительные требования к описательной части MDIB.

Как показано на рис. №1, стандартная база медицинских данных состоит из виртуальных медицинских устройств (VMD, Virtual Medical Device), каждое из которых включает в себя каналы метрик, сигналы тревоги и действия для изменения тех и других.

Каналы (channel) содержат наборы метрик (metrics) – данные артериального давления, температуры, оксигенации и пр.

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

Service Control Object (SCO) — операции для изменения параметров метрик или сигналов тревоги, позволяющие, например, изменить верхнее значение артериального давления, при котором срабатывает соответствующий сигнал тревоги.

Рис. №1 - Схема устройства медицинской базы данных

Рис. №1 — Схема устройства медицинской базы данных

Метод работы инструмента

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

Как это реализуется на практике?

Техническое задание включает в себя описание будущего устройства в XML формате – медицинскую базу данных MDIB. Для разработанного нами инструмента это будет «ожидаемый» по требованиям MDIB.

Затем инженер подключается к разработанному SDC устройству и считывает с него «фактический» файл медицинской базы данных MDIB.

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

Процесс получения «фактического» MDIB для SDC устройства и формирования CSV файла чуть более сложен: при подключении к реальному устройству необходимо поддерживать различные протоколы и форматы считывания (google protobuf, JSON, XML и т. п.).

После этого оба файла загружаются в разработанный нашей командой инструмент, который автоматически сравнивает оба файла и генерирует отчет, как показано на рис. №2. Отчет перечисляет параметры фактического устройства, которые:

  • Соответствуют ожидаемому.
  • Добавлены по сравнению с запланированным функционалом.
  • Удалены в ходе разработки.
  • Изменены по отношению к первоначальному ТЗ с указанием внесенных изменений.

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

Рис. №2 - Процесс верификации требований к SDC устройству

Рис. №2 — Процесс верификации требований к SDC устройству

Преимущества и ограничения инструмента

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

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

Однако, разработанный Ауригой инструмент имеет также и свои ограничения. К примеру, SDC-устройство может отдавать информацию в разных форматах данных, которые определяются конкретной реализацией устройства. Это может быть JSON, Google protobuf, и другие форматы. Для трансформации файла «фактических» данных с медицинского устройства в CSV файл может потребоваться адаптация.

Также, на данный момент, не все параметры базы медицинских данных доступны для сравнения. Этот список будет настраиваться и дополняться, поэтому, если вы заинтересованы в использовании этого инструмента на своем проекте – свяжитесь, пожалуйста, с нашим экспертом bd@auriga.ru для определения применимости нашего инструмента для вашего SDC-устройства.

Свяжитесь с нами напрямую

Офисы

Москва

117587, Варшавское ш., д. 125, стр. 16А

Ростов-на-Дону

344002, пр. Буденновский, д. 9, офис 305

Нижний Новгород

603104, ул. Нартова, д. 6, корп. 6, офис 829