Как отечественное ПО наладило работу современных медицинских систем
Замена иностранного софта на отечественный улучшила работу медицинского оборудования и упростила его обслуживание
Задача:
Разработать альтернативу иностранному ПО, интегрировать в систему медицинской организации и наладить его работу.
Причина:
Отсутствие техподдержки, недоступность обновлений, лицензионные ограничения и аннулирование лицензий.
В числе трендов, определяющих развитие IT-отрасли в этом году, — активное импортозамещение, особенно в области искусственного интеллекта. Отсутствие технической поддержки, недоступность обновлений, лицензионные ограничения и аннулирование лицензий — риски, с которыми столкнулись многие предприятия из-за ухода зарубежных IT-компаний.
За решением одной из таких проблем — заменой иностранного программного обеспечения на отечественное — к команде разработчиков обратился заказчик, представляющий сферу обслуживания современных медицинских систем.
Проблема заключалась в том, что прежний поставщик ПО сократил объем технической поддержки и ограничил возможность продления лицензий. В связи с этим команда приняла решение создать аналог ПО, соответствующий тем же требованиям, что и прежний, но с большим функционалом.
Проблема и решение
Часто при запуске программных комплексов исполнитель берет на себя и разработку ПО, и сборку оборудования. Иногда заказчик может не заключать договор на весь комплекс услуг, а выбрать только часть: например, оставить создание оборудования за собой, а разработку ПО доверить IT-компании — такой подход к проекту тоже эффективен.
Наталья Нартова, и.о. руководителя отдела QA в компании SimbirSoft:
«Современные IT-компании формируют новый тренд — осознанное импортозамещение. Благодаря широкой экспертизе и собственному штату специалистов они помогают клиентам выбрать: взять полноценную комплексную разработку ПО, замкнуть на себе определенную часть работ (например, аудит процессов) или выделить команду с определенным стеком технологий под проект».
«Дорожная» карта проекта
Обсудили этапы и дедлайны каждого трека. Работа велась на основе технического задания. Согласовывание функциональности, тестирование, формирование документацию для пользователей: каждый этап проходил в тесном взаимодействии с заказчиком.
Перед стартом согласовали удобный workflow и подобрали стратегию ветвления в Git, чтобы минимизировать конфликты и обеспечить быструю поставку релизов. Изучили зарубежный аналог: команде разработчиков предоставили тестовые данные и рекомендации по работе с программой.
Требования к системе:
- операционная система — Windows;
- тип приложения — настольное.
На старте выяснилось, что необходимо смоделировать гибкую архитектуру ПО с независимыми слоями: бизнес-логики, инфраструктуры и доступа к данным.
Такой подход позволяет:
а) тестировать отдельные слои независимо друг от друга;
б) при необходимости легко перенести архитектуру с одного типа приложения на другой.
Интеграция ПО с оборудованием — новый вызов
Разработчики исследовали протокол взаимодействия и провели тестовую эксплуатацию системы: удаленно подключились к стендам заказчика, чтобы «обкатать» базовые сценарии взаимодействия ПО со всеми устройствами.
Преодоление трудностей
Одной из самых сложных задач стала разработка математического ядра системы. Требовались точные расчеты и формулы: команда исследовала численные схемы, экспериментировала с параметрами моделей и реализовывали соответствующие алгоритмы.
Дополнительные опции
- Для быстрого развертывания системы доработали требования к установщику ПО
- С помощью генерации лицензионных ключей обеспечили безопасность при установке
Важно, что установщик и генератор ключей — отдельные программы. Таким образом, команда фактически разработала три продукта вместо одного.

Детали проекта
Тестирование в реальных условиях на ранних этапах выявило ряд ошибок и багов. Это позволило оперативно и безболезненно устранить недочеты. У заказчика уже был практический опыт работы с аналогом, на который команда опиралась при улучшении юзабилити и интерфейса. Дополнительные функции были реализованы с учетом всех требований к UI/UX.
Обязательная часть коммерческой разработки — контроль совместимости лицензий. В проекте была проведена проверка всех используемых библиотек с другими компонентами приложения.
Реализовали система импорта и экспорта на ключевых этапах основных сценариев. Добавили опцию, при которой система сохраняет все действия пользователя при каждом новом запуске — это упрощает работу и повышает удобство.
Бизнес-результаты
Разработка нового отечественного ПО закрыла вопрос с продлением зарубежной лицензии, обновлением, доработкой, развитием и технической поддержкой продукта. Заказчик избежал значительных финансовых затрат и потенциальных технических сбоев. Команда разработки добилась существенного повышения точности измерений, провела полную валидацию и верификацию ПО.
Подводя итоги
Можно сказать, что команда получила ценный опыт обратного инжиниринга: не только воссоздала аналог, но и улучшила систему. Идей по доработке было множество — расширять функционал и совершенствовать продукт можно бесконечно. Однако у каждого проекта есть временные рамки.
После получения положительной обратной связи — финальная стадия: сдача проекта по приемочному тестированию.
Управление проектом велось по методологии Scrum: регулярные спринты и отчеты по ним, обратная связь и новый инкремент для тестирования на реальном оборудовании.
Готовое ПО было одобрено — разработка успешно завершена.
Устранены проблемы обновления, продления зарубежной лицензии и техподдержкой продукта. Технические риски сведены к минимуму, а точность измерений повысилась. Функционал нового ПО стал шире.
Источники изображений:
Freepik.com
Рубрики
Интересное:
Новости отрасли:
Все новости:
Публикация компании
Рубрики


