- Цели проекта
- Чеклист готовности к работе над проектом
- Описание проекта
- Сроки реализации проекта
- Инструкция к выполнению
- Правила сдачи проекта
- Критерии оценки
Цель командного проекта - протестировать приложение для трекинга игровой активности.
Вам предстоит:
- самостоятельно протестировать часть проекта
- составить баг-репорты на найденные баги
- закрыть баг-репорты, составленные вашим коллегой.
В результате выполнения командного проекта вы:
- получите практический опыт работы в команде
- прокачаете навыки коммуникации и умение выполнять задачи в срок
- закрепите навыки работы с GitHub
- потренируете навык проверки кода и совместной разработки.
- Изучили "Инструкцию по выполнению командного проекта" и "Правила работы в команде" в личном кабинете.
- Знаете, кто с вами в команде.
- Познакомились с напарником и определились, каким способом будете общаться (переписка в любом мессенджере, видеозвонки).
- Договорились, кто будет размещать общий репозиторий проекта и отправлять его на проверку.
- Изучили материалы лекции "Collections Framework. CRUD и тестирование систем, управляющих набором объектов".
Если все этапы чеклиста пройдены, то можете смело приступать к работе над проектом. Успехов в работе!
-
В репозитории находится заготовка проекта, в котором есть классы для трёх сущностей: игры (
Game
), игрока (Player
), каталога игр (GameStore
) -
Каждая игра принадлежит какому-то каталогу
-
Каждый игрок может добавить себе в коллекцию игру
-
Также игрок может поиграть в добавленную игру через вызов своего метода
play
, тогда система записывает количество часов, которые он проиграл в игру -
Информация о проигранном времени хранится и в объекте игрока, и в объекте каталога игр, в чью игру он поиграл
-
Также в классе игрока и каталога игр есть методы для подсчёта разного вида статистик по играм и игрокам.
-
Над каждым методом в коде есть описание того, как он должен работать. При этом часть методов в этих классах не реализована, часть реализована с дефектами.
Ваша задача - исправить эти дефекты и дописать нереализованные методы.
Работа над проектом рассчитана на 10 дней для команды из двух человек. Для планирования своего времени рекомендуется опираться на роадмап. Придерживайтесь следующего деления проекта на этапы и задачи участников:
Этапы | Количество дней | Задачи |
---|---|---|
1, 2 этапы | 1 день | Создание репозитория для проекта, предоставление доступа участникам, распределение задач |
3 этап | 2 дня | Поиск дефектов, добавление тестов и составление баг-репортов |
4 этап | 2 дня | Исправление дефектов и реализация методов |
5 этап | 2 дня | Проверка на дефекты |
Сдача проекта | 3 дня | Отправка и обратная связь от проверяющего преподавателя |
Доработка по результатам* (при необходимости) | 2 дня | Доработка проекта по итогам обратной связи от проверяющего |
Повторная сдача проекта* (при необходимости) | 3 дня | Отправка и обратная связь от проверяющего преподавателя |
-
Один из участников создаёт у себя репозиторий и размещает в него содержимое этого репозитория (не через
Fork
), настраивает CI. -
Для предоставления доступа второму участнику необходимо зайти в
Settings
репозитория проекта, найти разделCollaborators
, кликнуть по кнопкеAdd people
, добавить ник напарника и выбрать рольAdmin
.
Распределите задачи между участниками в соответствии с таблицей.
Участник А | Участник Б | |
---|---|---|
Ищет дефекты в | класс GameStore |
класс Player |
Исправляет дефекты в | класс Player |
класс GameStore |
Отведите две ветки - player
для исправления дефектов в Player
и gamestore
для исправления дефектов в GameStore
.
Участник А | Участник Б | |
---|---|---|
Ищет дефекты в | класс GameStore |
класс Player |
Добавляет тесты в | класс GameStoreTest |
класс PlayerTest |
Составляет баг-репорты | по образцу | по образцу |
Важно - Никакие классы на этом этапе менять нельзя.
Участник А | Участник Б | |
---|---|---|
Исправляет найденные баги в | класс Player |
класс GameStore |
Исправления коммитятся в ветку | player |
gamestore |
Никакие другие классы менять нельзя.
-
Оба участника возвращаются к этапу 3 "Поиск дефектов" и составляют новые баг-репорты
-
Если новые дефекты найдены, то участники переходят опять к этапу 4 "Исправление дефектов и реализация методов"
-
Если дефектов в ветке не найдено, то участник, который поддерживает эту ветку делает
merge
вmain
, при необходимости разрешая конфликты.merge
следует делать черезPullRequest
.
- Все дефекты исправлены
- Все ветки слиты в
main
- Все баг-репорты закрыты
- CI-сборка зелёная
- Добавлена ссылка на публичный репозиторий в личном кабинете в поле "Ссылка на решение"
- ВАЖНО! Перед отправкой в поле “Отправить на проверку эксперту” проставлена галочка
В командном проекте будет оцениваться:
- какие дефекты были найдены каждым участником команды, а также как они были оформлены
- какие дефекты были исправлены каждым участником команды, включая качество кода
В случае, если ряд важных багов выявлен не был, с подсказками проверяющего преподавателя возможно возвращение к этапу 4 для исправления упущенных дефектов.
Зачет ставится обоим студентам при выполнении всех требований командного проекта