En

JazzTeam Software Development Company

Agile Java Development

Проект системы учета, анализа и принятия решений в финансовой сфере добавлен в портфолио

Рады сообщить, что мы опубликовали в нашем Портфолио описание проекта «Система учета, анализа и принятия решений по финансовому состоянию клиентов и абонентов», над которым продолжает работать наша команда профессионалов.

Техническое описание проекта

Проект включает в себя три приложения:

  1. HTTP-server c RESTful API сервисами,
  2. сервер, принимающий/отправляющий RabbitMQ сообщения,
  3. приложение для восстановления/актуализации NoSQL локальной базы данных.

В реализованной конфигурации МФД получает RabbitMQ сообщения от многочисленных отправителей в крупной биллинговой системе.

Происходит анализ поступившей информации от внешних отправителей с помощью бизнес-правил, написанных на фреймворке Drools. Далее, в соответствии с реализованной бизнес-логикой, МФД приступает к управлению фичами/услугами абонентов, а также отправкой заявок на создание/удаление различных нотификаций (sms сообщения, e-mail, fax, phone).

После принятия решений МФД отправляет ответные RabbitMQ сообщения в соответствующие внешние продукты. На следующем этапе продукт сохраняет измененные бизнес-объекты (абонентов) в локальную NoSQL базу данных Couchbase, которая служит для быстрого доступа к абонентам.

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

Какие работы выполнялись командой в части разработки:

  • Разработка технических спецификаций исходя из требований функциональных спецификаций, плотная работа с представителями заказчика (бизнес аналитик, представитель владельца продукта) и непосредственно с заказчиком.
  • Активное и регулярное взаимодействие с командой технической поддержки, совместный анализ проблем и поиска возможных решений.
  • Реализация внутренней бизнес-логики в виде открытых и доступных для изменений правил Drools.
  • Работа с удаленной БД — Oracle, загрузка данных из Oracle в локальное NoSQL хранилище — Couchbase.
  • Интеграция многих смежных продуктов с помощью брокера сообщений RabbitMQ, т.к. продукт ориентирован на обработку событий от смежных систем.
  • Работа с Akka, выстраивание цепочек из акторов (потоков), каждый из которых нацелен на свой вид работ.
  • Использование Zookeeper для хранения и управления конфигурации окружения.
  • Участие в грумингах, митингах, архитектурных встречах по продукту.

Какие работы выполнялись командой в части тестирования:

За время работы на проекте QA командой было создано более 3000 автотестов.
Технологии, которые использовались для создания и запуска авто-тестов:
Java SE + JDBC, Spring, XML, JSON и др., Robot Framework, PostgreSQL, Oracle, TestNG, Allure Framework, CI (Jenkins, TeamCity, VRA), Maven, Git.

  • Создание авто-тестов на различную новую функциональность, в особенности:
  • Management Extension (JMX).
  • Создание test cases, test suites, test runs в TestRail.
  • Актуализация и рефакторинг авто-тестов по ранее созданной функциональности.
  • Участие в грумингах, митингах, архитектурных встречах по продукту.
  • Тестирование различной функциональности:

Особенности, профессиональные достижения команды и результаты работы на проекте вы легко можете найти здесь: https://jazzteam.org/ru/portfolio/the-system-of-accounting-analysis-and-decision-making-on-the-financial-condition-of-customers-and-subscribers/

Не забудьте прочитать отзывы наших заказчиков о работе инженеров JazzTeam на других проектах! ????

, , , , , , , , ,