Что такое спринт в Agile/Scrum и для чего он применяется?

«Что такое спринт в Agile/Scrum и для чего он применяется?» — вопрос из категории Методологии разработки, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Спринт — это фиксированный по времени итеративный цикл в методологии Scrum, обычно продолжительностью от 1 до 4 недель, в течение которого команда создает готовый к выпуску инкремент продукта.

Основные цели и применение спринта:

  1. Планирование и фокусировка: На старте спринта команда отбирает задачи из бэклога продукта в бэклог спринта. Это создает четкий, ограниченный по времени фокус.
  2. Выполнение работы: Разработчики, тестировщики и другие члены команды работают над реализацией выбранных элементов бэклога.
  3. Контроль качества: Тестирование и обеспечение качества происходят внутри того же спринта, что и разработка (принцип "Готово" / Definition of Done).
  4. Адаптация и обратная связь: В конце спринта проводятся два ключевых события:
    • Обзор спринта (Sprint Review): Демонстрация инкремента стейкхолдерам для получения обратной связи.
    • Ретроспектива спринта (Sprint Retrospective): Анализ командой своего процесса для выявления улучшений на следующий спринт.

Пример структуры двухнедельного спринта в команде разработки ПО:

Спринт #15 (10.04 - 21.04)
Цель: Реализовать функционал сброса пароля пользователя.

Бэклог спринта:
- [Dev] Разработать API endpoint для запроса сброса пароля.
- [Dev] Реализовать отправку email с токеном.
- [QA] Написать и выполнить тест-кейсы для happy path и edge cases.
- [Dev] Создать форму ввода нового пароля (Frontend).
- [QA] Провести интеграционное и E2E-тестирование всего потока.
- [All] Участие в Daily Scrum, Review и Retrospective.

Почему это работает? Короткие циклы снижают риски, позволяют быстро реагировать на изменения и обеспечивают постоянный прогресс и прозрачность.