Тестирующая платформы для проведения лабораторных работ и тренировок по программированию
Аванесян Камо Камоевич
В АлтГТУ отсутствует платформа для проведения лабораторных работ по программированию с поддержкой автоматического тестирования
Централизованная платформа для тестирования студенческих программ позволяет:
- повысить качество проверки, в том числе на больших объемах данных
- сократить затраты рутинного труда преподавателя на ручное тестирование
- дать возможность студенту в свободном режиме сдавать задачи
- организовать тренировки по спортивному программированию
- эффективна при дистанционном режиме обучения
- Возможность прикрепления к темам теоретического материала
- Наличие иерархии тегов, которые можно прикреплять к задачам
- Возможность сбора статистика по задачам
- Вычисление фактической сложности задачи
- Обеспечение поиска задач по тегам и сложности
- Java 8 со Spring Framework, одним из наиболее популярным фреймворков для создания web-приложений на Java
- СУБД MySQL в качестве реляционной системой управления базами данных
- Шаблонизатор Thymeleaf для написания пользовательского интерфейса
- Twitter Bootstrap 4 для написания клиентской части web-интерфейса в виде web-страниц
Автоматизация тестирования программ является актуальной не только в условиях промышленной разработке программного обеспечения, но и при обучении будущих профессиональных программистов. Хорошая программа должна эффективно использовать время и память, обрабатывать большие объемы данных, не завершаться аварийно при особых случаях входных данных. Проверить вручную все характеристики кода достаточно сложно, поэтому при обучении курсу программирования исключительно важно применение специальных тестирующих систем. На сегодняшний день в АлтГТУ организация проведения лабораторных работ по курсу “Программирование” не обеспечена средствами автоматизации, защита лабораторных работ состоит в ручном тестировании преподавателем решения задачи студента. Недостатки такого подхода состоят: во-первых, в невозможности полноценной проверки правильности решения задачи; во-вторых, в необходимости многократной работы преподавателя в качестве тестировщика одних и тех же учебных заданий.
С похожими проблемами сталкиваются студенты сборной АлтГТУ по олимпиадному программированию на тренировках. Организация проведения тренировок основана на использовании сторонних сайтов с олимпиадными задачами, что существенно усложняет работу тренера, так как одновременно с разработкой плана тренировок он вынужден искать сайты, на которых эти тренировки можно провести. Кроме того, следствием является невозможность систематизации задач на единой платформе.
Устранение вышеперечисленных недостатков может решить платформа для автоматизации учебного и тренировочного процессов.