Информационная система

НПЦ

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

О клиенте

Научно-производственный Центр Ревитализации и Здоровья (НПЦРиЗ) начал свою деятельность в 2010 году. В 2018 году произошёл ребрендинг, в ходе которого НПЦРиЗ превратился в фирму «Пептиды» (Peptides).


Сегодня компания является лидером в сфере anti-age технологий с более, чем 600 филиалов в различных местах планеты.

Сегодня компания является лидером в сфере anti-age технологий с более, чем 600 филиалов в различных местах планеты.

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

Компания тесно сотрудничает с АННО ВО НИЦ Санкт-Петербургский Институт биорегуляции и геронтологии и участвует в гос. программе «Активное долголетие», возглавляемой руководителем Национального медицинского исследовательского центра сердечно-сосудистой хирургии им. А.Н. Бакулева.
    Проблема клиента
    До обращения к нам в 2017 году Заказчик использовал стороннюю расчётно-информационную систему для MLM-компаний, как SaaS решение (software as a service — программное обеспечение как услуга). Используемая система обладала рядом критичных недостатков:
    • 1
      Существенные проблемы с безопасностью
      Вплоть до того, что идентификатор сессии администратора (да и любого иного пользователя) передавался в открытом виде в GET-запросе, и служил единственным средством идентификации пользователя. То есть, можно было всего лишь перехватить один запрос от администратора и получить полный доступ на чтение и редактирования финансовой информации. Либо просто угадать идентификатор сессии, который представлял из себя целое число, которое просто увеличивалось на 1 при авторизации нового пользователя.
    • 2
      Обслуживание и развитие системы обеспечивало всего два человека
      Один иза них — менеджер, который полностью блокировал доступ к единственному разработчику системы. Случись что-либо с разработчиком, управление системой было бы потеряно.
    • 3
      Низкая скорость доработок в системе
      Любая доработка выполнялась сразу для всех клиентов системы. На момент обращения системой уже пользовалось несколько десятков компаний. Иногда внезапно появлялся новый функционал, который мог ломать логику работы бизнеса заказчика.
    • 4
      Для расчётов бонусных баллов для партнерской сети приходилось останавливать все операции в системе на сколько-то минут
      В этот момент невозможно было производить продажи в дилерских центрах.
    • 5
      Заказчик планировал выход на международный рынок, ему требовался функционал работы в разных регионах и валютных зонах

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

    Решение

    Предстояло разработать большую, сложную и нетривиальную систему. Кроме того, целевой аудиторией новой системы являлись люди в возрасте 55+, это требовало особого подхода к проектированию интерфейса. В сети было достаточно много активных партнёров в возрасте от 70 до 90 лет.

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

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

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

    Поэтому мы решили ограничиться написанием функциональных требований, объем которых составил набольшую книгу (объем технического задания был бы раз в 10 больше), и выбрали для реализации инкрементно-итерационную модель разработки.

      Разделения на этапы-инкременты было подобрано не просто так. Изначально в систему заложили модульную архитектуру и в первую очередь реализовывались самые критичные модули.

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

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

      За счёт того, что самые критические модули были реализованны самыми первыми, они дольше всего находились в тестировании, вероятность появления ошибок на продуктиве для этих модулей была самой низкой.
      Результат
      В 2018 году Заказчик за один день осуществил переход на новую систему, за счёт чего:
      • 1
        Решил проблемы безопасности и надёжности системы
      • 2
        Получил возможность работать в разных регионах
      • 3
        Получил возможность работать в разных валютных зонах
      • 4
        Получил возможность гибко дорабатывать систему
      После внедрения системы Заказчик воспользовался возможностью развивать систему с помощью нашей выделенной команды разработки. Поддержка и развитие системы ведётся по сей день.

      Стек подходов

      Стек технологий