Существующие решения

Многие из перечисленных критериев используются при верификации ПО в промышленности. Однако проблемы, рассматриваемые в данной работе, имеют свою специфику. При проверке заданий по программированию предполагается, что решения данного задания будут представлены во множественном количестве, и их необходимо проверять по одинаковому набору критериев. компиляция программа файл

Тем не менее, существует ряд инструментов, которые решают похожие задачи, среди которых можно выделить три наиболее подходящих и популярных инструмента: ejudge [4], Peach3 [5] и Web-CAT [6].

  • 1. ejudge является системой проведения онлайн соревнований по программированию и представляет собой мощный инструмент, позволяющий компилировать и запускать программы на исходном коде большинства популярных языков программирования. ejudge также способен осуществлять проверку правильности программы, используя для ввода-вывода данных командную строку. Также существуют аналоги, такие как codeforces [7], Timus [8], предоставляющие схожий функционал проверки программного обеспечения.
  • 2. Peach3 - система управления обучением, позволяющая компилировать и тестировать ПО на языке Java с помощью юнит-тестирования. Некоторые версии Peach3 предоставляют возможность проверки исходного кода на плагиат, однако такие версии продукта не являются свободно распространяемыми. Данная система предоставляет возможность проверки исходного кода на соответствие стилю программирования на языке Java.
  • 3. Web-CAT предоставляет возможности автоматизированной системы оценивания исходного кода по критерию полноты тестирования этого кода. Одним из основных плюсов данного инструмента является его расширяемая архитектура. Тем не менее, активная разработка Web-CAT не ведется уже с 2012 года.

Обзор данных аналогов показывает, что в них не учитывается большинство выделенных выше критериев оценки задания по программированию.

 
< Пред   СОДЕРЖАНИЕ   Загрузить   След >