
Медицинские компании, помимо приёма пациентов, должны качественно и безопасно хранить все данные, связанные с лечением, осмотрами и процедурами. От этого зависит не только имидж, но и лицензия организации.
В клиниках часто можно заметить упущения: база хранится в различных форматах у сотрудников разных отделов, синхронизации практически нет. В такой ситуации соблюдение всех правил хранения данных под угрозой.
В городе N ситуация вышла из-под контроля, и к Шерлоку дошла информация о потерянных пациентах.

Он посетил клинику, чтобы узнать детали. Первое, что бросилось в глаза - полный хаос:
-
маркетолог неверно настроила кампанию, в результате чего женщины вместе с мужчинами получили рассылку с акцией минус 20% на лечение простаты
-
менеджеры часто ошибаются, записывая пациентов не на то время
-
медицинские карты пациентов теряются и заводятся новые
-
доктора не могут найти результаты обследований
-
больничные листы заполняются с ошибками в указании диагнозов
Всё это возмутило невозмутимого сыщика, и он решил навести порядок.
Задача не из лёгких - распутать такой клубок, который запутывался не один год.
Для быстрого спасения всех пострадавших и поиска потерявшихся в базах пациентов Шерлок принял решение обратиться к супер-команде, которая не раз спасала из, казалось бы, безвыходных ситуаций - к Joy Dev.

Что нам стало известно от Шерлока
Компания - крупная частная клиника, оказывающая услуги по проведению исследований, лечению, терапии.
Запрос:
-
Систематизация данных о пациентах
-
Создание эффективной омниканальной связи с пациентами
-
Настройка точных и эффективных инструментов для таргетинга и продвижения
-
Объединение всех данных пациента в одном месте для лучшего взаимодействия
-
Возможность увеличивать функционал платформы по мере необходимости

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

Проанализировав и систематизировав полученную информацию, Шерлок вернулся к нам с такими проблемами:
1. Отсутствие единого профиля пациента
В имеющихся вариантах базы все данные пациентов вносились разными сотрудниками в зависимости от поставленной задачи. Поэтому сведения, указанные в профиле, отличаются. Так, в профиле одного пациента есть базовая информация, у другого - данные исследований, а у третьего - данные по больничным листам.
Также один и тот же пациент включен в несколько баз, в каждой из которых хранились разные данные, не объединённые в единый профиль.
Формирование полноценного единого профиля из существующих баз, актуализация и структуризация данных кажутся сотрудникам клиники невыполнимым заданием.
2. Низкий уровень персонализации
Рекламные кампании включают в себя акции на услуги, которые одним пациентам нужны, а другим противопоказаны. Поэтому правильно настроенные рассылки влияют не только на рост выручки, но и на имидж компании.
Кроме того, индивидуальных подход привлекает пациентов и делает их более лояльными. И наоборот: некорректная рассылка может привести к отказу от услуг клиники.
Настройка качественной маркетинговой кампании на данный момент является сложным процессом с выборкой контактов нужных пациентов из существующей базы.
Маркетологи вручную собирают данные, хотя данный процесс можно автоматизировать, сократив время и улучшив результат.
3. Трудности в организации омниканальных кампаний
Рассылка в компании запускалась по всем контактам, которые смогли извлечь маркетологи, сразу во все каналы: на почту, в мессенджеры, соцсети, посредством SMS.
Если бы каналы были интегрированы, единовременный запуск кампании был бы уместен, а в случае нашей клиники создавались ситуации, когда одному и тому же пациенту приходила реклама сразу во все каналы, и в результате пациент был раздражён навязчивостью такой рассылки и отписывался от новостей клиники.
При этом некоторые пациенты узнавали об акции уже тогда, когда она прошла.
4. Соответствие нормативным требованиям
Компании несут серьёзную ответственность за обработку и сохранность персональных данных. Нарушение правил грозит не только крупными штрафами, но и судебными разбирательствами с клиентами.
Хранить информацию в нескольких разрозненных базах — задача куда сложнее, чем управлять единой системой. Это не только усложняет контроль, но и значительно повышает риск утечек.

Наши решения
Мы взялись за задачу, имея большой опыт в создании CDP для медицинских компаний, поэтому сделали для клиники такую платформу, с которой удобно работать и которую в дальнейшем возможно расширить под новые потребности.
Итак, что мы сделали:
1. Применили модульный монолит. Это решение является оптимальным для поддержки подобного проекта и расширения его функционала в будущем, поскольку модули минимально зависимы друг от друга, что позволит дорабатывать их под новые задачи без нарушения логики системы.
2. Использовали архитектурный паттерн Domain-Driven Design (DDD).
Вместе с модульным монолитом, он составляет эффективную архитектуру проекта. Мы разделили его на следующие составляющие: домен, приложение, инфраструктуру и презентацию.

3. Использовали Command Query Responsibility Segregation (CQRS)
Он применяется, когда требуется частое обращение к веб-ресурсу, и один сервер не сможет обеспечить нужную нагрузку. Сохранение изменений с его помощью происходит пошагово, благодаря чему удобно отслеживается актуальное состояние системы. Его можно использовать в качестве журнала изменений за любой период с момента создания продукта.
4. Внедрили Event sourcing - архитектурный шаблон, оптимизирующий автономное чтение и запись.
5. Реализовали Dependency Injection и DI Container, чем сделали код менее связанным и упростили поддержку проекта внесение в него изменений.
Также внедрили следующие функции:
-
Усовершенствованный анализ отчётов с сегментацией и персонализацией.
-
Функционал для различных сценариев и доступную стоимость тестирования маркетинговых гипотез.
-
Интеграцию между платформой клиники и её партнёрами для увеличения общей базы контактов.
-
Обработку больших данных.
В результате мы создали систему, которая объединяет всё на одной платформе. Это позволяет выстраивать качественное омниканальное взаимодействие, ориентированное на потребности каждого пациента.
После проведённой нами аналитики Шерлок получил:
-
UX прототип — инструмент, демонстрирующий интерфейс продукта и его функционал до разработки.
-
Макеты экранов — визуализация планируемого приложения.
-
Техническое задание — документ, регламентирующий объём работ, оценку качества, тестирования и приёмки продукта.
Дизайн
Виды карточек
Функционально отличающиеся между собой:
-
“События” - заведены различные форматы (исследование, первичный, повторный приём и т.д), из которых можно выбрать нужный. Также тут указан статус пользователя (прошёл исследование, посетил доктора, на приёме).
-
«Обновления» - актуализируют информацию о пациентах. Возможна настройка параметров по нужным критериям.

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

Это решение упростит маркетологам работу с изменениями показателей и контролем результатов.
На графиках отображаются:
-
кликабельность (CTR),
-
коэффициент конверсии в продажу (CTO),
-
коэффициент возврата пользователей (UTO),
-
доставляемость рассылок,
-
процент отказов,
-
количество ошибок, отписок и жалоб на спам и т.д.
Диаграммы
Количество открытых, закрытых писем, с переходами на указанные в рассылке ресурсы, изменение графика показов, динамику воронки конверсии мы отобразили в виде диаграммы: такое отображение интуитивно понятно и удобно.

Все метрики просматриваются по датам. Можно провести анализ любой метрики отдельно от остальных.
Благодаря этому рекламная стратегия может гибко перестраиваться, так как маркетологам легко определить тенденции и своевременно определить эффективность стратегии. С помощью диаграмм легко выявить самые успешные кампании и в дальнейшем брать их за основу.
3. UI и разработка
Мы реализовали 4 части системы работы с данными:
-
Профиль пациента
-
Список пациентов
-
Профиль сегмента
-
Список сегментов
Список пациентов
Все карточки пациентов собраны на одном экране общим списком.
Так поиск определённой карточки и ознакомление со всей картотекой, фильтрация по любому критерию происходит удобнее и быстрее.

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

Если данные, указанные менеджером, невалидные, они не смогут быть сохранены.

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

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

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

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

Для простоты использования мы вынесли обновления на отдельную вкладку.

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

Здесь отображаются дата регистрации и статус пациента (валидирован или архивирован).

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

Сегменты
Содержат сведения о количестве пациентов, отправленных рассылках, датах их создания и последнего обновления.
Данные представлены списком.
Администратору доступна загрузка, копирование и архивирование сегментов, редактирование параметров и создание новых рассылок.

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

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

Архив сегментов
По своим функциям не отличается от архива пациентов. Содержит в себе неактуальные сегменты. Но при необходимости их можно копировать, восстанавливать и возвращать в общий список.
Вызовы
Запутанная история
Когда компания работает сравнительно недавно и её база контактов невелика, навести порядок легко.
Нам же досталась задача со звёздочкой, так как база была очень разрозненной. У каждого отдельного фрагмента информации о пациенте отличий было больше, чем сходства.
Шерлок был прав, доверив это дело нам!
После того, как мы навели порядок в данных, создали единый профиль пациента и научили сотрудников пользоваться собранной специально для них платформой, вместе с радостью от создания качественного продукта мы почувствовали облегчение медиков, администраторов и маркетологов: дальше ведь работать им. И работать удобно, легко и продуктивно!

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

Команда
-
4 аналитика
-
1 PM
-
2 разработчика
-
1 UX/UI дизайнер
Технологии
Язык: PHP 8.2
Архитектура: Clear, DDD
Фреймворк: Laravel 8.x

Автор: dkorkin