Разработка цифровой платформы для многопрофильной клиники
О проекте
Большинство медицинских сайтов выполняют роль информационного ресурса: рассказывают о клинике, врачах и услугах. Однако для многопрофильных медицинских центров этого уже недостаточно. Пользователю важно не просто получить информацию, а максимально быстро пройти путь от поиска услуги до записи на прием.
Именно такую задачу поставила перед нашей командой клиника «Врачеватель». Необходимо было разработать современный сайт, который объединил бы в себе корпоративный ресурс, медицинский каталог, систему онлайн-записи и инструмент автоматического взаимодействия с медицинской информационной системой.
При этом проект предполагал работу с десятками врачей, тысячами услуг, постоянно меняющимся расписанием специалистов и большим количеством взаимосвязанных данных. Поэтому ключевой задачей стала не только разработка интерфейса, но и проектирование внутренней архитектуры сайта, способной масштабироваться вместе с развитием клиники.
Задачи проекта
Перед нашей командой стояло несколько стратегических задач.
Во-первых, необходимо было полностью переработать структуру сайта. Пользователи должны были получать доступ к нужной информации за минимальное количество действий независимо от того, начинают ли они поиск с врача, услуги, направления лечения или стоимости.
Во-вторых, требовалось интегрировать сайт с медицинской информационной системой «Инфоклиника». Именно она является основным источником информации о расписании врачей, стоимости услуг и медицинских программах. Любые изменения должны автоматически отображаться на сайте без участия сотрудников клиники.
Еще одной задачей стало создание удобной системы записи на прием. Стандартные формы записи не подходили: они не учитывали зависимость между направлениями, услугами, врачами и свободными слотами приема.
Кроме того, требовалось обеспечить удобную работу сотрудников клиники. Административная часть должна была позволять управлять большим объемом данных без необходимости многократно заполнять одну и ту же информацию в разных разделах.
Аналитика и проектирование
Работа началась не с разработки дизайна, а с анализа бизнес-процессов клиники.
Детально изучили существующую структуру данных, принципы хранения информации в медицинской системе, процесс записи пациентов и сценарии взаимодействия пользователей с сайтом.
На этапе проектирования стало очевидно, что классическая структура медицинского сайта здесь работать не сможет.
Практически каждый объект имеет множество связей с другими. Одна услуга может относиться сразу к нескольким направлениям. Один врач оказывает десятки различных услуг. Каждая услуга имеет собственную стоимость, но при этом может входить в состав медицинских программ. Расписание врача постоянно изменяется и влияет на доступность записи.
В результате была разработана новая информационная архитектура, в основе которой лежит единая модель данных. Вместо хранения одинаковой информации в разных разделах сайта все сущности связаны между собой и автоматически используются в различных сценариях отображения. Благодаря этому однажды добавленная информация может одновременно использоваться:
- в карточке врача;
- в карточке услуги;
- в разделе направления;
- в прайс-листе;
- в расписании;
- в формах записи;
- в поисковой выдаче.
Такой подход значительно упрощает сопровождение проекта и практически исключает риск появления противоречивых данных.
Интеграция с МИС «Инфоклиника»
Одной из наиболее сложных технических задач проекта стала интеграция сайта с медицинской информационной системой.
Стандартные механизмы обмена данными не позволяли реализовать необходимую бизнес-логику, поэтому интеграция была доработана и адаптирована под архитектуру нового сайта.
Через API была реализована автоматическая синхронизация следующих сущностей:
- направления;
- услуги;
- врачи;
- стоимость услуг;
- индивидуальные прайс-листы специалистов;
- графики приема;
- медицинские программы.
В результате сайт перестал быть отдельной информационной системой и стал полноценным отображением данных, хранящихся в МИС. Автоматически формируются:
- каталог услуг, содержащий более 5000 позиций;
- карточки врачей;
- актуальные прайс-листы;
- интерактивное расписание;
- данные для онлайн-записи.
Все изменения, внесенные сотрудниками клиники в медицинскую систему, автоматически появляются на сайте без ручного редактирования.
Дополнительно реализовали механизм импорта данных из Excel-файлов, что позволяет использовать сайт даже при необходимости массовой загрузки информации вне стандартного процесса синхронизации.
Проектирование архитектуры данных
Наиболее сложной частью проекта стало построение архитектуры хранения информации.
Проблема заключалась не в количестве данных, а в количестве взаимосвязей между ними.
Каждый пользовательский запрос требует формирования информации сразу из нескольких источников. Например, если пациент выбирает врача, система должна мгновенно определить:
- какие услуги оказывает специалист;
- стоимость каждой услуги;
- ближайшие свободные даты;
- доступные интервалы времени;
- возможность записи.
Если же пользователь начинает поиск с направления лечения, логика полностью меняется. Теперь необходимо определить:
- перечень услуг данного направления;
- врачей, оказывающих эти услуги;
- стоимость;
- ближайшее расписание всех специалистов.
Чтобы обеспечить высокую скорость работы сайта, мы разработали внутренний слой обработки данных.
Были созданы собственные API-функции, отвечающие за агрегацию, подготовку и кэширование информации.
Это позволило не обращаться к базе данных заново при каждом действии пользователя, а быстро собирать необходимые данные из заранее подготовленных структур.
В результате даже при работе с тысячами услуг и большим количеством взаимосвязей интерфейс остается быстрым и отзывчивым.
Разработка интеллектуальной системы записи
Особое внимание было уделено онлайн-записи. Типовая форма записи с длинными выпадающими списками не решала задачу пользователя.
Поэтому мы реализовали полностью динамический сценарий записи. Каждый следующий этап зависит от предыдущего выбора. Например:
- после выбора направления система показывает только соответствующие услуги;
- после выбора услуги отображаются только специалисты, которые действительно ее оказывают;
- после выбора врача пользователь видит исключительно свободные даты;
- после выбора даты отображаются только доступные интервалы времени.
Все данные загружаются асинхронно без перезагрузки страницы.
Такой подход значительно уменьшает количество действий пользователя и позволяет записаться на прием буквально за несколько кликов.
Дополнительно каждая заявка подтверждается посредством SMS-кода, что повышает достоверность обращений и снижает количество ошибочных записей.
Интерактивное расписание
Еще одним сложным модулем стало расписание врачей.
Перед нашей командой стояла задача объединить большой объем постоянно изменяющихся данных в удобный пользовательский интерфейс.
Расписание позволяет одновременно фильтровать прием по:
- направлениям;
- врачам;
- услугам;
- датам.
При изменении любого параметра информация обновляется динамически без перезагрузки страницы.
С технической точки зрения данный модуль представляет собой систему группировки и фильтрации большого массива данных в режиме реального времени.
Отдельное внимание было уделено адаптивности интерфейса, чтобы одинаково комфортно пользоваться расписанием можно было как на компьютере, так и со смартфона.
Пользовательский опыт
При разработке интерфейсов основной акцент был сделан на сокращение пути пользователя до целевого действия.
Мы отказались от сложной навигации в пользу сценарного подхода, когда пользователь может начать поиск с любого удобного ему объекта — врача, услуги, направления или расписания — и в любом случае быстро прийти к записи.
Это позволило значительно уменьшить когнитивную нагрузку и сделать работу с большим объемом медицинской информации максимально понятной даже для пользователей, впервые посетивших сайт.
Результаты
В результате проекта клиника получила не просто новый сайт, а полноценную цифровую платформу, интегрированную с внутренними бизнес-процессами.
Удалось автоматизировать публикацию данных из медицинской информационной системы, реализовать масштабируемую архитектуру хранения информации и создать удобный механизм онлайн-записи, который работает с тысячами услуг и сложной системой взаимосвязей между направлениями, врачами и расписанием.
Для пациентов это означает быстрый поиск нужной услуги, всегда актуальную информацию о стоимости и свободном времени специалистов, а также возможность записаться на прием за несколько минут.
Для сотрудников клиники — сокращение объема ручной работы, отсутствие дублирования данных и единый источник актуальной информации, что значительно упрощает сопровождение сайта и его дальнейшее развитие.