Отзыв научного руководителя на выпускную квалификационную работу студентки 4 курса кафедры системного программирования СПбГУ Юлии Сергеевны Храмышкиной, обучающейся по направлению 010500 (02.03.03) (математическое обеспечение и администрирование информационных систем) Тема выпускной квалификационной работы: “Реализация системы проверки заданий по визуальному моделированию в QReal” Задача автоматизации проверки заданий становится актуальной с развитием массовых открытых онлайн-курсов (MOOC), где выполнение упражнений необходимо для закрепления материала, но преподаватель физически не может проверять решения всех пользователей. Эта задача становится довольно сложной, когда преподаётся дисциплина, ответами на упражнения по которой являются вещи более сложные, чем, например, исходные коды программ, которые можно запустить относительно некоторого набора тестов. В проекте QReal уже был позитивный опыт создания таких автоматизированных средств проверки: для языка программирования роботов была разработана система, проверяющая правильность работы программ, она на данный момент используется в онлайн-курсе на платформе Stepic. Перед Юлией Сергеевной была поставлена задача разработать похожую систему для проверки правильности задач на диаграммы классов языка UML. Важное отличие от предыдущих результатов в том, что в случае с диаграммами классов UML требуется анализировать структуру диаграммы, сопоставляя её, возможно, с несколькими правильными решениями, а не проверять правильность поведения программы. Первая задача, вставшая перед Юлией Сергеевной в ходе работы, состояла в доработке поддержки диаграмм классов UML в системе QReal, реализованной ею же в ходе курсовой работы третьего курса. Далее был выполнен обзор существующих методов и реализаций алгоритмов поиска шаблонов на графах и структурного сравнения диаграмм, на базе существующих решений был разработан свой алгоритм сопоставления UML-диаграмм, который и был успешно реализован в системе QReal. Далее была выполнена апробация путём решения нескольких задач группой пользователей, которая показала, что созданный инструмент вполне может использоваться для автоматизации проверки заданий. Проверка ВКР на предмет наличия/отсутствия неправомерных заимствований показала, что работа неправомерных заимствований не содержит. В ходе работы Юлия Сергеевна активно взаимодействовала с научным руководителем, каждую неделю представляя новые результаты. Юлия Сергеевна смогла самостоятельно разработать и реализовать достаточно сложный алгоритм сопоставления, продемонстрировав хорошие технические навыки, и довести работу до успешного окончания, получив систему, которой вполне успешно смогли пользоваться другие люди. Несмотря на то, что система ещё требует доработки в плане графического интерфейса, считаю, что все поставленные задачи выполнены и работа заслуживает оценки «отлично». Литвинов Юрий Викторович, Доцент кафедры системного программирования СПбГУ, Ведущий программист ООО “КиберТех Лабс”