Какие ключевые элементы включает в себя фреймворк Scrum?

«Какие ключевые элементы включает в себя фреймворк Scrum?» — вопрос из категории Софт-скиллы, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

Scrum — это эмпирический фреймворк для управления разработкой сложных продуктов. Его основа — три роли, три артефакта и пять событий.

1. Роли (Roles):

  • Владелец Продукта (Product Owner): Формирует видение продукта, управляет Product Backlog, расставляет приоритеты.
  • Scrum Master: Обеспечивает понимание и соблюдение правил Scrum, устраняет препятствия, помогает команде стать самоорганизующейся.
  • Команда Разработки (Development Team): Кросс-функциональная, самоорганизующаяся группа, которая создает готовый к выпуску Increment в каждом Спринте.

2. Артефакты (Artifacts):

  • Product Backlog: Упорядоченный по приоритету список всего, что нужно в продукте. Живой документ, постоянно уточняемый.
  • Sprint Backlog: Набор элементов из Product Backlog, выбранных для текущего Спринта, плюс план по их выполнению.
  • Increment: Сумма всех завершенных элементов Product Backlog за Спринт и всех предыдущих Спринтов. Должен быть в "Готовом" (Done) состоянии.

3. События (Events) — все ограничены по времени:

  • Спринт (Sprint): Кросс-функциональный "контейнер" для всех остальных событий (длится 1-4 недели).
  • Планирование Спринта (Sprint Planning): Команда определяет, что будет сделано в предстоящем Спринте и как этого достичь.
  • Ежедневный Scrum (Daily Scrum): 15-минутная встреча для синхронизации команды и планирования работы на ближайшие 24 часа.
  • Обзор Спринта (Sprint Review): Неформальная встреча для демонстрации Increment и обсуждения адаптации Product Backlog.
  • Ретроспектива Спринта (Sprint Retrospective): Встреча для анализа прошедшего Спринта и планирования улучшений процесса на следующий.

Ключевой принцип: Цикличность и инспекция/адаптация после каждого Спринта, что позволяет эффективно управлять изменениями и неопределенностью.