Формальные требования к выполнению проекта:

  1. Необходимо предложить свою формулировку задачи.
  2. Задание должно состоять из базовых и дополнительных требований.
  3. Обязательные требования, как правило, взаимосвязаны и их необходимо реализовать вместе. Из дополнительных требований следует выбирать некоторое подмножество.
  4. Проект должен быть связан с физикой, а основным языком реализации предполагается Python.
  5. Задания выполняются в команде по 2-3 человека (допускаются исключения)
  6. При выполнении задания каждый участник имеет за свою зону ответственности.
  7. Решение задачи предполагает как минимум три этапа:
  • Формулировка задачи. Результатом этапа является документ, содержащий уточненную формулировку задачи, а также предполагаемый путь ее решения. Рекомендуемый объем этой части документа 1-2 страницы. Кроме того, документ должен содержать табличное описание оставшихся этапов: сроки, полученная функциональность, разделение ответственности между участниками. Срок: последняя неделя ноября.
  • Реализация базовой функциональности. На этом этапе должны быть реализованы базовые требования. Срок: вторая неделя декабря.
  • Расширенная функциональность. На этом этапе должны быть частично или полностью реализованы дополнительные требования. Срок: зачетная неделя.
  1. Артефакты, получаемые по результатам этапов:
  • Программный код со сборочными файлами. Код должен собираться без участия IDE. Приветствуется контейнеризация.
  • Покрытие тестами.
  • Документация на программный интерфейс.
  • Примеры, демонстрирующие функциональность разработанной библиотеки.

Примечание: все артефакты, включая документацию 1-го этапа, должны быть размещены в системе контроля версий.