АННОТАЦИЯ 2
ВВЕДЕНИЕ 8
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 9
1.1. ОБЗОР АНАЛОГОВ 9
1.2. АНАЛИЗ ОСНОВНЫХ ТЕХНОЛОГИЧЕСКИХ РЕШЕНИЙ 12
1.2.1. База данных 12
1.2.2. Серверная часть приложения 17
1.2.2.1. Выбор языка программирования 17
1.2.2.2. Выбор фреймворка 19
1.2.3. Выбор фреймворка для клиентской части приложения 21
1.3. Выбор картографического сервиса 23
1.4. ВЫВОД 26
2. ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ 27
2.1. ФУНКЦИОНАЛЬНЫЕ ТРЕБОВАНИЯ 27
2.1.1. Основные требования к функциональности системы 27
2.1.2. Требования к функционалу системы администрирования 28
2.1.3. Требования к системе уведомлений 28
2.2. НЕФУНКЦИОНАЛЬНЫЕ ТРЕБОВАНИЯ 29
2.2.1. Требования к пользователю 29
2.2.2. Требования к системе безопасности 29
3. ПРОЕКТИРОВАНИЕ 30
3.1. АРХИТЕКТУРА ПРЕДЛАГАЕМОГО РЕШЕНИЯ 30
3.2. ДИАГРАММА ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ 32
3.3. ОПИСАНИЕ ДАННЫХ 33
3.4. КОМПОНЕНТЫ SPA 38
4. РЕАЛИЗАЦИЯ 41
4.1. ФОРМА АВТОРИЗАЦИИ В ПРИЛОЖЕНИИ 41
4.2. ОСНОВНОЕ ОКНО ПРИЛОЖЕНИЯ 42
4.3. СОЗДАНИЕ И ПОИСК МЕРОПРИЯТИЙ 45
4.4. ПРОФИЛЬ ПОЛЬЗОВАТЕЛЯ 56
4.5. ЛИЧНЫЕ СООБЩЕНИЯ ПОЛЬЗОВАТЕЛЯ 59
5. ТЕСТИРОВАНИЕ 61
5.1. ПРОВЕДЕНИЕ ПРОЦЕДУРЫ ТЕСТИРОВАНИЯ 61
6. ЗАКЛЮЧЕНИЕ 70
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 71
В настоящее время настольные игры в России набирают всё большую популярность. Большинство таких игр требует участия более чем двух игроков, и в большинстве случаев люди используют интернет в качестве средства коммуникации для организации встреч, поэтому существует необходимость в разработке веб-приложения для организации мероприятий по настольным играм.
Актуальность темы обусловлена тем, что основным методом коммуникации игроков являются социальные сети, которые обладают рядом недостатков, поэтому данный сервис будет нацелен на их устранение. Целью данной выпускной квалификационной работы является разработка приложения для упрощения коммуникации между людьми в вопросах о сборах с целью сыграть в настольные игры.
Для достижения поставленной цели необходимо решить следующие задачи:
1. Рассмотреть существующие на данный момент системы, связанные с поставленной задачей.
2. Выполнить анализ преимуществ и недостатков найденных систем, применить полученные результаты в процессе проектирования и разработки.
3. Составить требования к основному функционалу системы.
4. Выбрать методы и средства реализации проекта.
5. Разработать схему базы данных.
6. Выполнить программную реализацию приложения.
7. Выполнить тестирование готового продукта.
В рамках дипломного проекта было выполнено следующее:
1. Проведен анализ предметной области и аналогичных разработок;
2. Проанализированы и выбраны технические решения для реализации проекта;
3. Определены функциональные и нефункциональные требования к приложению;
4. Спроектирована архитектура разрабатываемого решения;
5. Разработана база данных;
6. Реализовано и протестировано программное обеспечение, реализующее поставленную задачу.
В разработанном веб-приложении реализованы следующие функции:
1. Создание мероприятий с указанием места проведения на карте и использованием базы данных настольных игр;
2. Поиск мероприятий с фильтрацией по месту проведения и играм;
3. Возможность вывода результатов поиска на карту;
4. Поиск игроков с фильтрацией по городам;
5. Комментирование мероприятий с получением сообщений в реальном времени;
6. Система личных сообщений в реальном времени;
В дальнейшем необходимо реализовать систему администрирования, после чего системы будет готова к эксплуатации.