Система продажи билетов для судоходной компании

«Нева Тревел Компани» — одна из крупнейших судоходных компаний Санкт-Петербурга с флотом из 27 теплоходов и 6 катеров, перевозящих пассажиров по рекам и каналам Северной Столицы с 1995 года. Водные прогулки осуществляют с 14 причалов, расположенных по всему городу.

Задача

«Нева Тревел Компани» обратилась к нам с задачей по модернизации legacy-системы для продажи билетов. Она устраивала заказчика по функционалу, но со временем он столкнулся с тем, что стек технологий, на котором система была написана, устарел. Её стало сложно поддерживать, возникли проблемы со стабильностью и внедрением новых функциональных возможностей для дальнейшего развития. Руководство компании приняло решение на первом этапе воссоздать билетный сервис с нуля на актуальных технологиях, а на втором — добавить новый, ставший востребованным, функционал.

Решение

Главное требование к системе — продажа билета клиенту должна состояться в максимально большом количестве неблагоприятных сценариев. 14 причалов «Нева Тревел Компани» синхронизированы между собой, но архитектурно автономны – с индивидуальными серверами, на которых хранятся данные. Каждый причал способен работать при отсутствии интернета, на нем будет продолжать осуществляться продажа билетов на рейсы судоходного оператора.

На реализацию первого этапа выделен год. За это время разрабатываем новую систему и переходим к ее постепенному внедрению: в течение месяца сотрудники «Нева Тревел Компани» будут пользоваться сразу двумя системами одновременно. После получения обратной связи и устранения обнаруженных недочетов произойдет полный переход на новую и отказ от старой. Большое внимание в проекте будет уделено функциональному и нагрузочному тестированию: с момента запуска система должна справляться с высокими нагрузками судоходного сезона.

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

Ролевая модель билетной системы

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

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

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

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

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

Команда

Менеджер проекта, тимлид, 4 разработчика и тестировщик.

Технологии
TypeScript
Go
Kotlin
PostgreSQL
SymmetricDS
GitLab CI
Функциональные возможности TMS-решения
1
Интеграция с торговым оборудованием и внешними системами

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

2
Синхронизация данных между офисами продаж

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

3
Формирование отчетов

Включены финансовые отчеты по рабочим сменам, а также отчеты по отправленным рейсам (посадки).

4
Автоматизированное рабочее место кассира

Кассир работает в одной программе, в которую внесена вся его рабочая деятельность.

5
Табло расписания и стойки самостоятельной регистрации

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

6
Управление рейсами

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

7
Продажа дополнительных услуг и управление акциями

Расширенный список дополнительных услуг, которые предлагают компании-партнеры «Нева Тревел Компани» – музеи, рестораны, туристические центры Санкт-Петербурга. Предусмотрена настройка специальных предложений с учетом разных категорий покупателей и партнеров. Например, комбинированные заказы, включающие акционные доп. услуги или наборы из определенных билетов.

Мы найдем лучшее решение вашей задачи