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