Аннотация
ВВЕДЕНИЕ 6
ГЛОССАРИЙ 7
1. АНАЛИЗ ТРЕБОВАНИЙ 8
1.1 Анализ требований к платформе 8
1.2 Модель предметной области 19
1.3 Эскизы 22
2 ВЫБОР И ОБЗОР ХАРАКТЕРИСТИК ИНСТРУМЕНТОВ РАЗРАБОТКИ 29
2.1 ASP.NET Core MVC 30
2.2 ASP.NET Core Identity 31
2.3 Entity Framework Core 32
3 ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА ПРИЛОЖЕНИЯ 37
3.1 Проектирование и разработка web-приложения 37
3.2 Взаимодействие платформы с внешними сервисами 49
3.3 Проектирование и разработка модели прав доступа 53
4. РЕАЛИЗАЦИЯ ПРИЛОЖЕНИЯ 59
ЗАКЛЮЧЕНИЕ 71
ЛИТЕРАТУРА 72
В одном из выступлений президент Российской Федерации Владимир Владимирович Путин сказал, что “ключевой вопрос для развития сферы связи и IT - это подготовка профессиональных кадров” . Перед учебными заведениями и раньше стояла ответственная и важная задача по обеспечению качественного образования будущих IT- специалистов. Но в связи со сложившейся ситуацией, связанной с распространением коронавирусной инфекции в мире, вузам просто необходимо создание и развитие дистанционных платформ или площадок, позволяющих организовывать и обеспечивать качественную подготовку профессиональных кадров в этой сфере.
Важность подготовки будущих IT-специалистов осознает и Томский государственный университет (далее - ТГУ). Именно поэтому в качестве одного из элементов модели в рамках проекта «Цифровой университет» была выделена цифровая среда обучения программированию, которая должна сделать процесс обучения более удобным как для студентов, так и для преподавателей. Наличие данной платформы позволит обучающимся учебного заведения развивать свои профессиональные навыки алгоритмического мышления и программирования в любое удобное для них время. Для профессорско-преподавательского состава автоматизация проверки задач позволит сэкономить время на базовую оценку корректности решений учащихся и даст им возможность сосредоточиться на качестве написанного кода и проектировании образовательной траектории, необходимой для студентов.
Данная платформа - сложный продукт, включающий в себя функционал, необходимый для автоматизации процесса обучения студентов основам программирования и алгоритмического мышления. Одним из составных элементов данной платформы является клиентское веб-приложение, разработка которого и стала целью данной выпускной квалификационной работы.
Для реализации данной цели были выделены следующие задачи:
1. проанализировать требования к разрабатываемому приложению;
2. спроектировать разрабатываемое приложение;
3. разработать функционал клиентского веб-приложения для платформы.
Решению поставленных задач посвящена данная выпускная квалификационная работа.
В рамках выполнения выпускной квалификационной работы было разработано клиентское веб-приложение для платформы, включающей в себя функционал, необходимый для автоматизации процесса обучения студентов основам программирования “CodeHedgehog”. Для этого были решены все поставленные в работе задачи:
• проанализировать требования к разрабатываемому приложению;
• спроектировать разрабатываемое приложение;
• разработать клиентское веб-приложение для платформы.
Первая версия платформы была введена в эксплуатацию осенью 2020 года, с того момента её возможности были расширены. В данный момент платформу уже используют и тестируют студенты и сотрудники Высшей IT школы ТГУ и Тюменского государственного университета (в рамках деятельности Школы перспективных исследований (SAS)). По данным на двадцать второе мая 2021 года в приложении зарегистрировано более 200 уникальных пользователей, функционируют 6 классов, один из которых является общедоступным, отправлено более 41 тысячи уникальных попыток решений (без учета переотправленных решений), размещено более 250 задач, доступных для решения пользователям. Разработанное решение допускает дальнейшее развитие функциональности приложения, что и планируется сделать в будущем. Таким образом, цель работы достигнута.
Разработанный ресурс доступен по адресу https://code.hits.university/.