Курсовая работа: Разработка модуля личного кабинета участника конкурса
Описание
РЕФЕРАТ
Отчет содержит 48 страниц, 4 раздела, 34 рисунка, 20 источников, 4 таблицы.
МОДУЛЯ ЛИЧНОГО КАБИНЕТА УЧАСТНИКА КОНКУРСА, PHP, SYMFONY, ДИЗАЙН, ВЕБ-ПРИЛОЖЕНИЕ, POSTGRESQL, DOCKER.
Цель: разработка функционального модуля личного кабинета участника конкурса, обеспечивающего автоматизацию подачи заявок и их обработки.
Объектом исследования курсовой работы является процесс управления заявками на участие в конкурсах.
Предметом исследования являются программные решения для автоматизации подачи и обработки заявок участников конкурсов.
Практическая значимость данной курсовой работы заключается в создании программного обеспечения, которое может использоваться для автоматизации процесса подачи заявок на конкурсы в различных сферах, таких как образование, искусство, наука и другие. Это позволяет повысить эффективность взаимодействия участников и организаторов, а также сократить трудозатраты.
Результатом исследования является разработанный и протестированный модуль личного кабинета участника конкурса, который включает функционал регистрации, подачи заявок, модерации заявок и генерации PDF-сертификатов, что обеспечивает удобство и доступность для пользователей.
СОДЕРЖАНИЕ
1ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ... 9
1.1Анализ платформы «Рисуйснами.рф» . 9
1.2Анализ платформы «Конкурсы.рф» . 12
1.3Требования к программному продукту. 14
2ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА... 15
2.1Проектирование архитектуры программного продукта. 15
2.2Проектирование макетов интерфейса и логики их взаимодействия. 20
3РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА... 24
3.1Описание языка и среды разработки программного продукта. 24
3.2Реализация программного продукта. 25
3.2.1Настройка окружения с использованием Docker 26
3.2.2Инициализация проекта Symfony. 28
3.2.3Разработка схемы базы данных. 28
3.2.4Создание структуры проекта. 29
3.2.5Реализация системы безопасности. 30
3.2.6Создание базовых сущностей и миграций. 32
3.2.7Разработка логики работы модулей. 33
3.3Тестирование и результат тестовых испытаний приложения. 38
3.3.1.Модульное тестирование. 38
3.3.2.Тестирование безопасности. 38
3.3.3.Тестирование производительности. 38
4АНАЛИЗ КАЧЕСТВА РАЗРАБОТАННОГО ПО... 40
4.1Используемые стандарты в оценке качества ПО.. 40
4.2 Тестирование функций системы.. 40
4.3Перспективы развития программного обеспеченья. 43
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ.. 46
ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ
В данной курсовой работе используются следующие термины с соответствующими определениями:
Администратор – | Пользователь с расширенными правами. |
База данных – | Хранилище информации о задачах, курсах, преподавателях и других элементах приложения. |
Задача – | Определение: Конкретное задание, созданное преподавателем, которое должно быть выполнено в рамках определённого курса или проекта |
Интерфейс приложения – | Графическая оболочка приложения, через которую пользователь взаимодействует с функционалом. |
Пользователь – | Человек, который взаимодействует с системой, приложением или устройством для выполнения задач или достижения определённой цели. |
Фреймворк – | Программная платформа, предоставляющая готовый набор инструментов, библиотек и правил для ускорения и упрощения разработки приложений. |
Docker – | Платформа для контейнеризации, которая позволяет упаковывать приложения и их зависимости в изолированные контейнеры, обеспечивая портативность и удобство развертывания. |
Nginx – | Высокопроизводительный веб-сервер и обратный прокси-сервер с поддержкой HTTP, HTTPS, а также почтовых протоколов. Используется для балансировки нагрузки, кэширования и управления соединениями. |
ПЕРЕЧЕНЬ СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ
В настоящей курсовой работе применяют следующие термины сокращения и обозначения:
БД – база данных
DTO –Data Transfer Object (объект передачи данных)
PDF –Portable Document Format
ISO – International Organization for Standardization (Международная организация по стандартизации)
IEC – International Electrotechnical Commission (Международная электротехническая комиссия)
PSR – PHP Standards Recommendations (рекомендации по стандартам для PHP)
PSR-1 – Basic Coding Standard (основные принципы кодирования)
PSR-2 – Coding Style Guide (руководство по стилю кода)
PSR-4 – Autoloading Standard (стандарт автозагрузки классов)
SOLID – принципы объектно-ориентированного программирования
ВВЕДЕНИЕ
Компьютерные технологии глубоко интегрировались в нашу повседневную жизнь, играя важнейшую роль в оптимизации различных процессов и автоматизации повседневных задач. Сегодня трудно представить любую сферу деятельности без применения современных цифровых решений, которые обеспечивают удобство, быстроту и точность выполнения работ. Одной из таких областей является организация и проведение конкурсов, где актуальной задачей становится автоматизация подачи заявок и взаимодействия между участниками и организаторами.
Автоматизация конкурсов представляет собой важный шаг в направлении упрощения взаимодействия между сторонами. Использование современных технологий позволяет минимизировать временные затраты, исключить возможные ошибки, связанные с ручной обработкой данных, и создать прозрачную систему управления процессом. Разработка модуля личного кабинета участника конкурса играет ключевую роль в достижении этих целей, предоставляя участникам удобный инструмент для подачи заявок, загрузки конкурсных работ, а также получения информации о статусе их заявок. Организаторы, в свою очередь, получают возможность эффективно обрабатывать данные, проверять работы и отслеживать этапы проведения конкурса.
Актуальность выбранной темы обусловлена возрастающей необходимостью создания таких цифровых инструментов, которые делают процесс участия в конкурсах более доступным и понятным. Современные конкурсы требуют высокой степени автоматизации, что способствует увеличению их популярности, привлечению большего числа участников и повышению качества предоставляемых услуг. Кроме того, разработка подобного модуля значительно снижает нагрузку на организаторов, улучшая общую эффективность их работы.
Цель работы: разработка функционального модуля личного кабинета участника конкурса, обеспечивающего автоматизацию подачи заявок и их обработки.
Объект исследования: процесс управления заявками на участие в конкурсах.
Предмет исследования: программные решения для автоматизации подачи и обработки заявок участников конкурсов.
Для достижения поставленной цели были сформулированы следующие задачи:
- Реализовать функционал регистрации и авторизации пользователей;
- Сформулировать требования к модулю личного кабинета участника конкурса;
- Спроектировать архитектуру и интерфейс пользователя;
- Разработать логику взаимодействия программного модуля;
- Реализовать модуль личного кабинета участника конкурса, провести тестирование и оценку качества.
Практическая значимость
Практическая значимость работы состоит в том, что разработанное программное обеспечение может использоваться для автоматизации процесса подачи заявок на конкурсы в различных сферах: образование, искусство, наука и других сферах. Это способствует повышению эффективности взаимодействия участников и организаторов, а также снижению трудозатрат.
Структура и объем работы
Курсовая работа выполнена на 48 страницах машинописного текста (без приложений). Состоит из введения, четырёх разделов и заключения, библиографического списка (20 наименований). Работа включает 34 рисунка, 4 таблицы.