Идея создания площадки для размещения клиентами объявлений о продаже минут и гигабайтов из пакета своего тарифа стала логическим развитием флагманских продуктов Tele2 «Перенос остатков» и «Делитесь гигабайтами», реализованных с применением гибридной интеграционной платформы Bercut (Hybrid Integration Platform, HIP).
Интеграционная архитектура HIP адаптирована к инфраструктуре Tele2. Платформа имеет кумулятивный эффект — каждый раз все что Bercut реализует в рамках интеграционных проектов и API становится доступно разработчикам для повторного использования при создании новой функциональности. Bercut переиспользовал артефакты от вышеперечисленных продуктов, что позволило менять, перемещать, дебетовать и кредитовать трафик в этих системах. На шине данных были разработаны новые сервисы, база данных и адаптер к PostgreSQL. Различные типы операций и бизнес-логика для выполнения бизнес-процессов выполняются компонентами гибридной интеграционной платформы. Это позволило в короткие сроки разработать и запустить столь сложный функциональный абонентский сервис.
Перед реализацией проекта были прописаны бизнес-требования: как должен функционировать продукт, механики, гибкость настройки и одно из ключевых требований — доступность максимальному количеству абонентов.
Основной сложностью являлась гетерогенность тарифных планов Tele2, неоднородность которых требовалось учесть (длительная история, наличие архивных тарифных планов и т.п.). Также абонентам необходимо было предоставить возможность продажи трафика жителям других регионов. Все эти задачи были решены за счет интеграционных возможностей платформы Bercut v3. Полный цикл аналитики и архитектуры занял всего 2 месяца. На встречах команд были зафиксированы:
- технологический скоуп проекта;
-
предусмотрены все варианты и возможности по конфигурации решения;
-
оценена предположительная нагрузка на сервис;
-
спроектирована гибкая структура хранения продуктовых настроек;
-
предусмотрена возможность управления продуктом бизнес-заказчиком.
Важно было предусмотреть и риски мошеннических действий, когда злоумышленники стремятся найти и воспользоваться уязвимостями системы. В связи с этим потребовалось использовать отдельный уровень, отвечающий за безопасность — интеграционный шлюз API Gateway Bercut.
API GW контролирует выполнение всех запросов и обеспечивает безопасное взаимодействие с внешними системами. Также, для защиты от неправомерных действий мы проанализировали всевозможные сценарии взаимодействия с продуктом, это позволило выявить точки, в которых необходимо было продумать дополнительную защиту. Решение позволяет получить развернутую и детальную статистику парой запросов к базе, таким образом можно легко вычислить кто использует продукт не по назначению. Бизнес API спроектирован для создания гибких запросов, это не язык SQL, а бизнес-метод, позволяющий получить данные как из личного кабинета, так и из мобильного приложения. Это позволяет анализировать количество выставленных пользователем лотов за определенный период, объем реализуемого трафика и прочую информацию, которая быстро извлекается из базы лотов, реализованной Bercut. Спроектированная таким образом схема хранения данных обеспечивает высокую селективность.
Bercut удалось оптимизировать и передачу настроек нижнего уровня между компонентами системы. Настройки хранятся консолидировано, вместе с вызовом в компонент передается и контекст, исходя из которого он выполняет запрошенное действие, таким образом компонент может обращаться к настройкам.