Details

Title Разработка клиент-серверного приложения для поиска и планирования встреч/мероприятий: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения»
Creators Дедяев Данил Максимович
Scientific adviser Новопашенный Андрей Гелиевич
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects веб-приложение ; организация мероприятий ; Node.JS ; Vue.js ; TypeScript ; PostgreSQL ; Sequelize ; Axios ; Socket.IO ; Winston ; Morgan ; JWT ; web application ; event organization
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.01
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2025/vr/vr25-2483
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally New arrival
Record key ru\spstu\vkr\37092
Record create date 9/19/2025

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

Задачи, решенные в ходе исследования: 1. Анализ предметной области и существующих решений для организации мероприятий. 2. Формирование технического задания и выбор технологического стека. 3. Проектирование архитектуры приложения с использованием трехуровневой модели. 4. Разработка серверной и клиентской частей приложения с поддержкой уведомлений в реальном времени. 5. Тестирование функциональности приложения. Работа выполнена на базе современных веб-технологий. Серверная часть реализована на Node.js с Express.js, обеспечивая RESTful API, интегрированное с базой данных PostgreSQL через Sequelize. Клиентская часть построена на Vue с TypeScript. Для обмена данными использован Axios, для уведомлений — Socket.IO, для логирования —  Winston и Morgan. В результате создано веб-приложение, реализующее поиск, создание, управление мероприятиями и взаимодействие участников через группы и комментарии. Разработана структура базы данных для хранения всех данных. Реализована система мгновенных уведомлений. Приложение обладает возможностью расширения за счет модульной архитектуры и интеграции дополнительных функций, таких как аналитика или внешние сервисы.

Tasks Addressed in the Study: 1. Analysis of the subject area and existing event organization solutions. 2. Development of technical specifications and selection of the technology stack. 3. Design of the application architecture using a three-tier model. 4. Implementation of server and client components with real-time notifications. 5. Testing of the application’s functionality. The work was conducted using modern web technologies. The backend was developed on Node.js with Express.js, providing a RESTful API integrated with a PostgreSQL database via Sequelize. The frontend was built on Vue with TypeScript. Axios was used for data exchange, Socket.IO for notifications, and Winston and Morgan for logging. As a result, a web application was created, enabling event search, creation, management, and participant interaction through groups and comments. A database structure was developed to store all data. A real-time notification system was implemented. The application supports expansion through its modular architecture and potential integration of additional features, such as analytics or external services.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
  • СПИСОК СОКРАЩЕНИЙ И УСЛОВНЫХ ОБОЗНАЧЕНИЙ
  • ВВЕДЕНИЕ
  • ГЛАВА 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
    • 1.1. Обзор предметной области
    • 1.2. Обзор существующих программных средств
      • 1.2.1. KudaGo (https://kudago.com)
      • 1.2.2. Яндекс.Афиша (https://afisha.yandex.ru)
      • 1.2.3. Кавёр (https://kaverafisha.ru)
      • 1.2.4. Google Calendar (https://calendar.google.com)
    • 1.3. Выводы по главе
  • ГЛАВА 2. ОБОСНОВАНИЕ АРХИТЕКТУРНЫХ РЕШЕНИЙ И ТЕХНОЛОГИЧЕСКОГО СТЕКА
    • 2.1. Техническое задание
      • 2.1.1. Функциональные требования
      • 2.1.2. Нефункциональные требования
    • 2.2. Архитектура современных веб-приложений
      • 2.2.1. Трехуровневая модель клиент-сервер-БД
      • 2.2.2. Анализ и выбор подхода к проектированию
    • 2.3. Технологический выбор и инструментарий
      • 2.3.1. Язык программирования
      • 2.3.2. Backend
      • 2.3.3. База Данных
      • 2.3.4. Frontend
      • 2.3.5. Взаимодействие клиентской и серверной частей
      • 2.3.6. Инструменты контроля качества
      • 2.3.7. Среда разработки
      • 2.3.8. Безопасность и Сертификаты
    • 2.4. Выводы по главе
  • ГЛАВА 3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
    • 3.1. Архитектура приложения
      • 3.1.1. Клиентская часть
      • 3.1.2. Серверная часть
    • 3.2. Структура базы данных
    • 3.3. Реализация серверной части
      • 3.3.1. Общая структура
      • 3.3.2. REST API
      • 3.3.3. JWT и хеширование
      • 3.3.4. Загрузка и хранение изображений
      • 3.3.5. Протоколирование
      • 3.3.6. Socket.io
    • 3.4. Реализация клиентской части
      • 3.4.1. Общая структура
      • 3.4.2. Сторы
      • 3.4.3. Веб-сокеты
    • 3.5. Выводы по главе
  • ГЛАВА 4. ТЕСТИРОВАНИЕ ПРИЛОЖЕНИЯ
    • 4.1. Тестирование серверной части
    • 4.2. Тестирование клиентской части
    • 4.3. Выводы по главе
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Access count: 2 
Last 30 days: 2

Detailed usage statistics