Блог пользователя shilov

Автор shilov, 12 лет назад, По-русски

Заинтересовал вопрос по системам проведения соревнований с научной точки зрения. Может кто-то знает научные статьи или кто-то защищал диссертации по данной теме? Интересно рассмотрение этого вопроса как с технической так и педагогической точки зрения.

Буду благодарен за любую информацию по данному вопросу.

  • Проголосовать: нравится
  • +21
  • Проголосовать: не нравится

»
12 лет назад, # |
Rev. 2   Проголосовать: нравится +15 Проголосовать: не нравится

На хабре видел давно цикл статей о том, как проводят олимпиады школьников в НГУ. Там упоминалось, что тестирующая система была защищена как диплом (и информация о ней самой тоже была). Можно попробовать поискать там.

Я в качестве своего диплома тоже выбрал написание собственной тестирующей системы, но пока была готова только web оболочка для уже существующей системы проверки задач.

»
12 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится

Имел в этом весеннем семестре непродолжительный опыт применения проверяющей системы на практических занятиях по дисциплинам "Алгоритмы и структуры данных" и "Дискретная математика".

Система использовалась с двумя целями:

  • автоматизация проверки решений задач студентов;

  • внесение в учебный процесс дух соревновательности;

  • дать возможность каждому студенту работать в своём ритме.

Эти цели были достигнуты. Более того, многие студенты были огорчены, когда я объявил о том, что прекращаю использовать эту систему и возвращаюсь на традиционную методику проведения занятий.

Что такая система не может решить или помочь решить:

  • необходимость просмотра программ на предмет используемых методов программирования, а также на предмет стиля кодирования;

  • необходимость просмотра программ на предмет сдачи чужого решения.

Возможно вторая проблема в каких-то других системах как-то решается, но первую полагаю разрешить нелегко.

Есть и другие издержки. Главная -- необходимо обеспечить качественную подготовку упражнений, которая включает в себя все те же самые этапы, что и подготовка олимпиадных задач (условие, ограничения, лимиты, тесты, чекеры, авторские решения). В чём издержка? Требуется очень много времени, чтобы качественно проделать эту работу.

Мой вывод из полученного опыта: использовать систему, но при условии наличия времени на подготовку задач.

  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    А почему-бы не использовать тестирующую систему как некое "минимальное условие" для проверки решения преподавателем? То есть преподаватель не смотрит код, пока задача не прошла проверку на работоспособность в системе автоматической проверки? У нас сейчас используется такой подход и время работы преподавателя это вроде сокращает (особенно если задача представляет сложность для студента и он сперва тратит кучу времени чтобы заставить программу работать впринципе, а уже потом преподаватель смотрит код, делает замечания, студент их правит и опять преподаватель проверяет, что после изменений программа продолжает получать AC ).

    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится +11 Проголосовать: не нравится

      Всё так и есть. Никаких проверок, пока не сдашь в систему. Очень удобно, часто сразу видно, что неправильно делает студент. Ведь каждый тест -- это проверка каких-то возможных ошибок в решении.

      Есть ещё один плюс использования системы -- она дисциплинирует в отношении написания кода. Нельзя схалтурить и подсунуть неполное или неправильное решение, при этом нужно соблюсти все требования условия, как-то формат ввода-вывода, ограничения, лимиты.