NobleBlocks

Research indexJournal article

Разработка сервиса по аренде водного транспорта

Немчинов

Electronic Library of Peter the Great Polytechnic University21 Aug 2026Open access

NobleIDark:/48914/w1/20261105/3B539FDEDOI10.18720/spbpu/3/2026/vr/vr26-1850

Free to read at the publisher

You can read the abstract here, or the full text at the publisher.

Read at the publisher

Abstract

Данная работа посвящена разработке прототипа backend-части сервиса по аренде водного транспорта. Разрабатываемый сервис предназначен для автоматизации процесса подбора судна, проверки его доступности, расчёта стоимости аренды, оформления бронирования и предоставления актуального расписания участникам процесса. Необходимость разработки обусловлена тем, что в рассматриваемой предметной области все заявки обрабатывается вручную через разрозненные каналы. Это приводит к увеличению нагрузки на менеджера, риску конфликтов расписания и недостаточной прозрачности процесса бронирования для клиента. Задачи, которые решались в ходе исследования: 1. Провести анализ предметной области аренды водного транспорта и существующих решений. 2. Определить основных участников процесса аренды и описать типовой процесс бронирования. 3. Сформулировать бизнес-правила, функциональные и нефункциональные требования к разрабатываемой системе. 4. Спроектировать архитектуру backend-приложения и схему базы данных. 5. Разработать прототип backend-части сервиса. 6. Провести верификацию разработанного прототипа и выполнить анализ полученных результатов. В ходе работы были рассмотрены особенности процесса аренды водного транспорта, включая выбор судна, проверку вместимости, расчёт стоимости, управление доступностью и жизненный цикл бронирования. Были выделены основные роли пользователей системы: клиент, менеджер, капитан и администратор. На основании анализа предметной области были сформулированы требования к сервису, определены границы прототипа и выбрана архитектура модульного монолита. В результате был разработан прототип backend-части сервиса, включающий модули аутентификации, управления пользователями, судами, тарифами, расписанием, бронированиями, административными приглашениями и ограниченным контуром капитана. Верификация прототипа проводилась на нескольких уровнях: модульном, интеграционном и функциональном. Были проверены ключевые бизнес-правила системы. Также была выполнена проверка производительности основных операций. Результаты тестирования подтвердили, что разработанный прототип соответствует основным функциональным и нефункциональным требованиям. Для достижения данных результатов в работе были использованы следующие информационные технологии, программное обеспечение, базы данных и прочие ресурсы: язык программирования Go, стандартная библиотека Go, REST API, формат обмена данными JSON, система управления базами данных PostgreSQL, драйвер PostgreSQL pgx, Docker и Docker Compose для контейнерного запуска приложения и базы данных, Git для контроля версий, среда разработки GoLand, Postman для ручной проверки API, а также встроенные средства Go testing и net/http/httptest для автоматизированного тестирования.

Discussion

More

Suggest a correction or report