Интеграция медицинского оборудования с ЛИС
Современные медицинские лаборатории насыщены цифровой аппаратурой, в которой диагностические показатели рассчитываются автоматически. Но мало их просто рассчитать, нужно ещё и отправить полученные данные с устройства (например, комплекса ПЦР-диагностики) в информационную систему лаборатории, чтобы полностью исключить человеческий фактор при проведении процедур и ускорить обработку сотен проб в день.
Благодаря импортозамещению, набирают популярность российские информационные системы. По просьбе крупной отечественной лаборатории мы разработали интеграционный модуль для одной из них.
Клиент обратился к нам с задачей: автоматизировать обмен данными между лабораторными установками (амплификаторами) зарубежных производителей и ЛИС (лабораторной информационной системой) отечественного вендора.
О клиенте
Один из крупнейших биотехнологических холдингов на Северо-Западе России, ведущий отечественный производитель и поставщик диагностических решений: реагентов для выявления онкомаркеров, гормональной диагностики и диагностики инфекционных заболеваний. В системе клиента — более 80 тест-систем и свыше 1000 реагентов и ферментов.
Задачи
1. Создать единый интерфейс для работы с лабораторным оборудованием
Клиент использовал в своих лабораториях несколько амплификаторов: для разных типов тестов — разные устройства.
И у каждого прибора — своё ПО для анализа результатов. Но это неудобно для сотрудников: на момент обращения к нам лаборантам нужно было освоить несколько интерфейсов, ещё и постоянно между ними переключаться во время работы. От этого падала эффективность работы лаборатории, и, что хуже, возникала вероятность ошибок при интерпретации результатов анализов пациентов.
Единый UI (user interface) — решение, через которое лаборант смог бы взаимодействовать с любым прибором в общем месте. Поэтому нас попросили его разработать. И это только одна из задач проекта! Самое интересное впереди.
2. Интегрировать амплификаторы с ЛИС
При заполнении планшетов для пробирок, расположение каждого отдельного образца в амплификаторе, а также данные пациента фиксировалось вручную. Сразу после проведения анализа результаты снова руками переносились в ЛИС.
Такая работа отнимала у лаборантов массу времени, и, кроме того, в неё легко могла закрасться ошибка. Например, лаборант мог перепутать, кому принадлежит тест, и приписать результаты не тому пациенту. Не потому, что специалист невнимателен: работы очень много, и любому человеку сложно перерабатывать такой объём данных ежедневно. Правильное решение в такой ситуации — исключить человеческий фактор. И мы знали, как это сделать.
Чтобы выполнить запрос клиента, потребовалась автоматизация. Клиент хотел, чтобы информации из карточки пациента передавалась в прибор напрямую из ЛИС, а результаты анализа прикреплялись к профилю. Помимо этого, автоматизация была нужна, чтобы улучшить прослеживаемость образцов. Для контроля качества и аудита этот момент критичен.
3. Подключить приборы, необходимые для проведения тестов на коронавирус
Проект стартовал в начале эпидемии COVID-19, поэтому наш клиент хотел расширить спектр тестов на коронавирусы, включая SARS-CoV-2. Для этого требовалась подключить новые амплификаторы:
- CFX96 от BioRad;
- LightCycler96 от Roche;
- QuantStudio 5 от Thermo Fisher;
- Rotor-Gene Q от Qiagen.
Перед нами стояла многоуровневая задача: не только интегрировать указанные амплификаторы, но и разработать и отладить процесс подключения новых приборов, чтобы лаборатория могла быстро реагировать на появление новых штаммов и внедрять тесты для их диагностики.
Наши решения
Объединили две несвязанные программы клиента
Лаборатория клиента использовала две программы, написанные на разных языках программирования. При этом лаборанты знали оба интерфейса — у них были выстроены процессы, но, как мы отмечали ранее, управлять оборудованием из двух интерфейсов неудобно.
Мы провели UX-исследование: пообщались с пользователями каждой из этих программ, чтобы выявить удачные решения в интерфейсе обеих — и перенесли их в новый, современный, единый для всех операций, интерфейс. Взяли самое лучшее из старых решений, чтобы лаборантам было удобно работать с инструментами автоматизации.
Для разработки нового фронтенда мы выбрали стек на основе Electron и Angular. И вот почему это сделали:
- Одна из программ клиента уже задействовала данный стек. Мы смогли переиспользовать часть кода и таким образом сократили ресурсозатраты на разработку.
- Electron — кроссплатформенное решение, которое работает одинаково на Windows, macOS и Linux. Так, клиент может развернуть систему на любой ОС, когда потребуется — и не переплачивать за создание системы заново для ОС, пока не вошедших в проект.
- Angular использует строгую типизацию TypeScript. Это означает, что каждая переменная в коде имеет чётко определённый тип данных. В больших проектах, как наш, это помогает минимизировать ошибки.
В результате мы пересобрали UI за 4 месяца. Теперь у клиента есть единый интерфейс для работы со всем лабораторным оборудованием, и лаборанты отмечают, что их рабочий процесс существенно ускорился и упростился.
Во время разработки мы нашли в старом ПО клиента ряд багов (ошибок). Они «перекочевали» в софт от предыдущего контрактора. Новую систему на шатком фундаменте строить нельзя — ни по техническим, ни по экономическим соображениям — поэтому мы предложили клиенту качественную доработку решения на нашей стороне. Получив его согласие, быстро устранили недочёты, которые могли привести к ошибкам в работе лаборатории, и довели ПО до совершенства.
Интегрировали систему ЛИС «Ариадна» с амплификаторами CFX96, LightCycler96, QuantStudio 5 и Rotor-Gene Q
Клиент использовал ЛИС (лабораторную информационную систему) «Ариадна». Мы взяли на себя весь процесс интеграции разработанного на предыдущих этапах программного решения с этой ЛИС. Вышли на команду разработчиков «Ариадны», сами наладили с ними коммуникацию, приехали к ним в офис, пообщались очно — в итоге договорились об интеграции и плотно работали вместе на протяжении всего проекта. Клиенту не пришлось тратить своё время на самостоятельное выстраивание отношений с создателями ЛИС, и наш менеджер проекта был рад в этом помочь.
Главный вызов, с которым мы столкнулись — это процесс обмен данными. Выяснилось, что на момент выполнения проекта не было решений, которое позволило бы интегрировать отечественную ЛИС с зарубежными приборами. Мы рассмотрели несколько вариантов на основе открытого кода, но они либо оказались несовместимы с веб-приложениями, либо просто устарели.
В итоге для решения задачи мы, как инноваторы, решили поступить нестандартным путём: разработали собственную TypeScript-библиотеку для работы с ЛИС-протоколом. И вот что умеет эта библиотека:
- Работает с бинарным протоколом ЛИС. Правильно «упаковывает» данные для обмена между ЛИС и приборами, соблюдая нужный формат и последовательность байтов. Информация о каждой пробирке в планшете обогащается данными пациента из ЛИС, а результаты теста заносятся на его карточку.
- Позволяет работать с протоколом на высоком уровне. Мы можем оперировать понятными объектами вроде «ФИО пациента» и «Результат анализа», а библиотека сама переводит это в низкоуровневые команды. Лаборанты могут легко добавлять и редактировать информацию, передающуюся в амплификатор из удобного и понятного интерфейса.
- Поддерживает как отправку данных в ЛИС, так и получение информации из неё. Теперь не нужно вручную вносить информацию — всё происходит автоматически, быстро и без ошибок переноса.
Предложенный нами подход оказался надёжнее и дешевле для клиента, чем попытки адаптировать существующие решения.
Библиотека полностью автоматизировала обмен данными между ЛИС и лабораторным оборудованием. Теперь информация о пациентах автоматически передаётся из ЛИС в приборы и систему, а результаты анализов сразу попадают в карточку нужного пациента.
Подключили приборы, разработанные ведущими зарубежными поставщиками
Клиент планировал расширить возможности ПЦР-тестирования из-за пандемии COVID-19. Нам же предстояло быстро подключить новые амплификаторы к системе и разработать алгоритмы тестов.
В работе столкнулись с несколькими факторами, которые усложнили задачу:
- Производители не раскрывали протоколы приборов, и мы не объясняли, как отформатировать данные на вход так, чтобы прибор их прочёл. Мы действовали без инструкции от производителя — самостоятельно изучили как работает каждый амплификатор и написали протоколы взаимодействия с нуля.
- Приборы находились в разных лабораториях клиента их нельзя было вести из рабочего процесса — ведь лаборатории всё время используют их для важных анализов. Мы оптимизировали процесс тестирования, уменьшили количество необходимых итераций и подстроились под график лаборатории.
- У клиента не было готовых решений для ПЦР-тестов, поэтому мы создали новейшие алгоритмы для их проведения и интерпретации результатов. Многократно тестировали, чтобы убедиться, что все алгоритмы безошибочно подходят для анализов кОТ-ПЦР и кПЦР.
В итоге мы подготовили систему к подключению четырёх новых моделей и успешно его реализовали.
Результаты проекта
На сегодня новая система развёрнута во всех лабораториях клиента, и лаборанты отмечают её удобство — единый интерфейс экономит сотрудникам до 45 % времени, и всё за счёт правильно спланированной и реализованной автоматизации.
Подытоживая, вот что мы сделали:
- Ускорили работу лаборатории, автоматизировав обмен данными между ЛИС и оборудованием. Теперь лаборанты тратят меньше времени на ввод данных и обработку результатов.
- Создали единый интерфейс для управления всеми амплификаторами. Он помогает клиенту быстрее обучать персонал и и экономить ресурсы на выполнении рутинных задач.
- Разработали алгоритмы тестов и подготовили систему к работе с новыми амплификаторами. Создали алгоритмы для ПЦР-тестирования на COVID-19.
C новой системой клиент может быстрее внедрять новые тесты и оперативно диагностировать штаммы появляющихся вирусов. А eщё наше ПО разворачивается на любой платформе и растёт вместе с лабораторией.
Медицинские проекты — одни из любимых для нашей команды. Нам близка идея о том, что медицина не терпит ошибок. Понимая это, работаем с максимальной отдачей, чтобы помочь клиникам, больницам и лабораториям обеспечивать пациентам заботу на высочайшем уровне.
Компания NLABTEAM от всего коллектива выражает благодарность клиенту за интересный, общественно полезный проект и доверие к нам. А также благодарим всех, кто принял участие в разработке решения и подготовке данного материала.