PSMS

Материал из Олимпиадное программирование в УлГТУ
Версия от 17:36, 13 апреля 2015; Ctrlalt (обсуждение | вклад) (Новая страница: «'''Система управления пространством задач (Problem Space Management System)''' --- универсальная база свед…»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Система управления пространством задач (Problem Space Management System) --- универсальная база сведений о задачах, контестах и участниках, которую планируется использовать при составлении турниров и тренировок, а также отслеживании прогресса участников.

Функциональные требования

Пространство задач

  • Иметь централизованный доступ ко всем задачам, когда-либо использованным в контестах УлГТУ
  • Распространить централизованный доступ на задачи из онлайн-архивов, печатных сборников и т. п.
  • Иметь возможность объединять варианты одной и той же задачи, представленные в различных источниках

Атрибуты, материалы и архивы задач

  • Сохранять атрибуты задач (КАКИЕ?)
  • Поддерживать указание тем задачи, объединение тем в иерархические структуры
  • Сохранять пометки и замечания различного рода к задаче
  • Если задача создана нами, иметь архив для Contester, архив для Polygon, ссылку на Polygon
  • Если задача создана не нами, иметь возможность указания ссылок на архивы, разборы и т. п.

Контроль версий задач

  • Иметь возможность сохранить аутентичные версии задач, использованных в контестах УлГТУ
  • Иметь возможность проследить историю версий задач, сохранять информацию о версиях-родителях, версиях-наследниках и характере изменений в новых версиях
  • Разделять базовые (рабочие) версии, версии, отличающиеся только адаптацией условий, версии, отличающиеся изменениями программ, версии, содержащие ошибки
  • Поддерживать нелинейную, древовидную историю версий

Контесты

  • Поддерживать объединение задач в контесты
  • Хранить стендинг для каждого контеста
  • Хранить атрибуты контеста (дату, время, авторов, комментарии)

Участники и безопасность

  • Поддерживать регистрацию участников
  • Отслеживать множества решённых участниками задач, сохранять код решений (возможно)
  • Отождествлять позиции в стендингах с аккаунтами участников, прослеживать историю участия в контестах (возможно)
  • Открывать доступ к задачам УлГТУ только отдельным участникам