проектирование и реализация микро-сервисной архитектуры для Приложение по диагностике физического и психологического состояний
Технологии: Drupal 6, Symfony, React Native
Задача
Приложение по диагностике физического и психологического состояний* – проект в области здравоохранения, бизнес-модель которого ориентирована на людей, страдающих физическими или психическими заболеваниями, а также страховых компаний, предоставляющих им выплаты в случае возникновения каких-либо проблем со здоровьем. Основная задача приложения – помочь пользователям определять их недуги, чтобы страховые компании могли своевременно оказать им помощь и сэкономить на этом бюджет.

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

*проект находится под NDA, поэтому мы не имеем права разглашать реальное название приложения
Разработка
Основная работа пришлась на переезд с Drupal 6 на Symfony: этот фреймворк сам по себе является одним из наиболее эффективных с точки зрения безопасности среди прочих решений в PHP, так как представляет собой набор компонентов, которые в большинстве случаев не связаны между собой и являются стандартом среди PHP-фреймворков. Мы также решили использовать микро сервисную архитектуру для возможности работать над компонентами независимо и для устойчивости системы в целом.

На втором этапе работы мы обновили и представили новый рабочий процесс так, чтобы он соответствовал требованиям страховых компаний. В итоге процесс стал включать в себя несколько ролей, тестирование, парное код-ревью и другие элементы.

Далее мы также прошли ряд penetration-тестов от сторонних организаций. Приложение подвергалось умышленным хакерским атакам, после чего организации предоставляли отчет о слабых местах, которые все еще не отвечали требованиям безопасности. Большинство из них все еще включало элементы Drupal 6, избавиться от которых было уже достаточно проблематично, тем не менее, мы по максимуму избавились от старого кода и заменили его Symfony, но оставили Drupal 6 для админ-панели и пары других элементов.

Результат
В результате изменения инфраструктуры проект клиента достиг следующих показателей:
  • Раньше приложение испытывало проблемы с доступностью хотя бы раз в месяц, сейчас же их нет.
  • API-calls занимали около 3 секунд на обработку, а с изменениями – 600 миллисекунд.
  • Качество кода, как и рабочий процесс, были оптимизированы и отвечают современным стандартам Agle-подхода, включая в себя процессы по разработке, тестированию и код-ревью с разными ролями в рамках команды.
  • Средний цикл релиза занимал около полугода, сейчас же – 2-3 недели.
Расскажите о вашем проекте
Наш менеджер свяжется с вами в течение рабочего дня и расскажет о дальнейших действиях
ФИО
Email
Телефон
Ваш проект
Нажимая на кнопку, вы даете согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности