Details

Title Разработка клиент - серверного приложения для автоматизации распределения студентов по элективным дисциплинам на языке Golang: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта» = Development of a clientserver application for automating the distribution of students among elective disciplines using the Goalang programming language
Creators Митрошин Даниил Викторович
Scientific adviser Петров Александр Владимирович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2026
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects элективные дисциплины ; клиент-серверное приложение ; golang ; postgresql ; telegram bot ; REST API ; docker ; docx ; openapi ; kafka ; elective courses ; student distribution ; clientserver application
Document type Bachelor graduation qualification work
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-2720
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally New arrival
Record key ru\spstu\vkr\42606
Record create date 8/21/2026

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

Тема выпускной квалификационной работы: «Разработка клиентсерверного приложения для автоматизации распределения студентов по дисциплинам по выбору с использованием языка Golang». Целью работы является разработка клиент-серверного приложения, автоматизирующего процесс выбора и распределения студентов по дисциплинам по выбору, факультативам и модулям мобильности с учетом ограничений образовательного процесса. В ходе работы выполнен анализ предметной области, сформулированы функциональные и нефункциональные требования, спроектирована модульная монолитная архитектура, реализованы серверная часть на языке Golang, слой доступа к данным PostgreSQL, REST API, Telegram-бот, импорт CSV/JSON, экспорт результатов и генерация заявлений DOCX. Для документирования интерфейса подготовлена статическая спецификация OpenAPI со Swagger UI. Дополнительно реализован отключаемый модуль публикации событий в Apache Kafka, не влияющий на выполнение основных пользовательских сценариев при недоступности брокера. Разработанный прототип запускается через Docker Compose и может использоваться как основа для опытного внедрения в образовательной организации. Тестирование показало корректность правил проверки выбора, импорта исходных данных и алгоритма автоматического распределения обязательных выборов.

The subject of the graduate qualification work is “Development of a clientserver application for automating the distribution of students among elective disciplines using the Goalang programming language”. The purpose of the work is to develop a client-server application that automates the process of choosing and assigning students to elective courses, optional modules and mobility modules while respecting educational constraints. The work includes domain analysis, requirements specification, architecture and database design, implementation of a Golang server, PostgreSQL repository layer, REST API, Telegram bot, CSV/JSON import, result export and DOCX statement generation. The API is described by a static OpenAPI specification exposed through Swagger UI. An optional Kafka event publisher is implemented as an integration extension and does not block core business scenarios if the broker is unavailable. The prototype is delivered with Docker Compose and can be used for pilot deployment in an educational organization. Testing confirmed the correctness of validation rules, import procedures and the automatic assignment algorithm for required choices.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
...