Table | Card | RUSMARC | |
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 |
Annotation
Целью данной работы является описание и реализация последовательности автоматической проверки лабораторных работ в курсе ООП на языке Java. Решение поставленной задачи лежит в области технологий непрерывной интеграции и обеспечения качества программных продуктов. Выработаны требования к реализуемой системе и определён набор её функций. На основе данных требований разработана архитектура решения, проведён анализ технических средств, обеспечивающих заданную функциональность. При помощи выбранных инструментов разработана система состоящая из двух модулей. Первый модуль осуществляет видимые студенту проверки текста и качества его решения. Второй модуль скрыт от учеников и предоставляет возможность только инициировать проверки внутри себя, возвращая результат в виде индикатора прохождения проверки. Разработанная система обладает гибкостью настройки под различные задачи курса программирования. Скрытый модель проверки может быть настроен для предоставления более подробного ответа студентам. Реализованная в ходе данной работы система решает поставленные задачи и может быть внедрена в учебный процесс.
The aim of this work is to describe and implement a sequence of automatic verification of student’s works in the OOP course in Java. The solution to this problem lies in the field of continuous integration technologies and quality assurance of software products. The requirements for the implemented system are developed and a set of its functions is defined. Based on these requirements, a solution architecture is developed, an analysis of the technical means providing the specified functionality is carried out. Using the selected tools, a system consisting of two modules was developed. The first module performs visible to the student verification of his decision’s text and quality. The second module is hidden from students and provides the ability to only initiate checks within itself, returning the result in the form of an indicator of the passage of the test. The developed system has the flexibility to be customized for the various tasks of a programming course. A hidden verification model can be configured to provide a more detailed answer to students. The system implemented in the course of this work solves the assigned tasks and can be implemented in the educational process.
Document access rights
Network | User group | Action | ||||
---|---|---|---|---|---|---|
ILC SPbPU Local Network | All | |||||
Internet | Authorized users SPbPU | |||||
Internet | Anonymous |
Table of Contents
- Список сокращений
- Перечень таблиц
- Перечень иллюстраций
- Перечень листингов
- Введение
- 1. Стек технологий
- 1.1 Альтернативные решения
- 1.1.1 edX + external grader
- 1.1.2 Stepik
- 1.1.3 Moodle
- 1.2 Выбор стека технологий
- 1.2.1 Требования к стеку технологий
- 1.2.2 Средства сборки Java-приложений
- 1.2.3 Средства анализа тестового покрытия кода
- 1.2.4 Средства статического анализа текстов программ
- 1.2.5 End-to-end тестирование
- 1.2.6 Антиплагиат
- 1.2.7 Интегрированная система CI/CD
- 1.2.8 Внешняя система CI/CD
- 1.2.9 Возможное решение на стеке Gitlab + Gitlab CI
- 1.2.10 Преимущества GitHub Classroom
- 1.3 Выводы
- 1.1 Альтернативные решения
- 2. Автоматизация последовательности
- 2.1 Требования к системе
- 2.2 Предлагаемый подход
- 2.3 Архитектура системы
- 3. Практическая реализация
- 3.1 Шаблонный репозиторий
- 3.2 Настройка Gradle
- 3.3 Правила Checkstyle
- 3.4 Настройка правил Spotbugs
- 3.5 Метрики покрытия кода. Jacoco
- 3.6 Pytest для тестов ввода-вывода
- 3.7 Применение Moss
- 3.8 Скрытие тестов через выполнение в Jenkins
- 3.8.1 Webhooks в GitHub
- 3.8.2 Webhook Action
- 3.8.3 Доставка Jenkins
- 3.9 Отчёт о прохождении последовательности
- 3.10 Тестирование системы
- 4. Результаты
- Список использованных источников
Usage statistics
Access count: 7
Last 30 days: 0 Detailed usage statistics |