Спринты в IT: что это и как проводить, чтобы эффективно управлять разработкой
И выполнить все задачи в срок.
И выполнить все задачи в срок.
Спринт (sprint) — это фиксированный отрезок времени, за который команда разработки завершает одну часть проекта для внешнего или внутреннего заказчика. Итогом спринта должен стать работоспособный фрагмент продукта — инкремент.
Работа по спринтам помогает получать результаты на короткой дистанции. Когда команда заканчивает спринт, заказчик получает работающую функцию в сервисе или приложении. Её можно доработать или откатить назад, поэтому ниже риск ситуаций, когда после нескольких месяцев напряжённой работы итоговая версия не совпадает с ожиданиями и приходится всё переделывать.
Пример. Стартап разрабатывает приложение для путешествий, где пользователи могут сами составлять карту маршрута, находить удобный способ передвижения и бронировать отели. В первом спринте в дизайн взяли стартовую страницу, во второй — личный кабинет, а в конце третьего визуализировали раздел с расписанием разных видов транспорта. Готовые разделы по такому же принципу передают в разработку параллельно с дизайном остальных.
До того как разделить проект на этапы, составляют бэклог продукта. Это список задач, которые ранжируют по степени важности — от самых срочных или сложных до второстепенных. Если цели или требования меняются, бэклог редактируют.
В процессе работы из общего бэклога формируют бэклоги спринта с задачами, которые нужно выполнить за один полный цикл (итерацию). Разработку делят на следующие этапы.
Планирование спринта
Встреча для обсуждения двух вопросов:
Команда ставит цель и задачи спринта и оценивает их сложность. Это помогает расставить приоритеты, расписать план будущей работы и понять, сколько времени на неё потребуется.
В процессе разработки приложения для путешествий задачи на спринт могут выглядеть так:
Сколько длится спринт? Фиксированного показателя нет — в среднем он может занимать до месяца. Выбор оптимального времени зависит от компании или самого проекта. При больших объёмах работы подойдут длинные спринты, а если задач немного — однонедельные. Однако после того, как сроки установлены, всё строго: поменять их не получится.
Выполнение задач
Основная часть спринта. Команда выполняет задачи и регулярно общается, чтобы синхронизироваться. Для этого тимлиды или менеджеры проекта проводят дейлики в начале рабочего дня. Это ежедневные короткие совещания по 10–15 минут, на которых участники рассказывают:
Команда всегда знает, на каком этапе находится проект и чем именно занимаются другие участники.
Обзор спринта
Когда инкремент готов, команда показывает его заказчику. Он оставляет обратную связь и решает, можно ли выпускать разработку или её нужно улучшить.
Этот этап позволяет не работать вслепую. Команда сразу учитывает мнение заказчика и понимает, в каком направлении двигаться. Например, пересмотреть набор функций или структуру интерфейса.
Ретроспектива спринта
Это встреча, на которой команда анализирует законченный спринт и оценивает результаты работы — успехи и неудачи. На этом этапе разработчики определяют, какие именно доработки нужно сделать в следующей итерации.
После этого цикл повторяется, и тимлиды определяют план для следующего спринта. Например, выбирают задачу с наивысшим приоритетом, вводят новые правила и определяют технический долг.
В масштабных и сложных проектах
Объёмный проект невозможно спланировать детально сразу целиком. Спринт помогает брать крупные этапы проекта и по очереди делить их на задачи. Например, сначала создать архитектуру приложения, затем продумать дизайн, а после — сделать вёрстку главной страницы. Если внутри этапа слишком много задач, их также можно распределить по отдельным спринтам. Допустим, посвятить отдельным функциям. Таким образом команда управляет каждой частью разработки и может выпускать её по мере готовности. Ждать полностью готового продукта не приходится.
В разработках с меняющимися требованиями
Небольшие итерации помогают работать в условиях неопределённости и реагировать на обратную связь от заказчика или ситуацию на рынке. Допустим, в приложении для путешествий решили подхватить один из трендов и добавить маршруты по местам съёмок фильмов или сериалов. Однако тест в реальных условиях показал, что среди аудитории такой формат отдыха не популярен, и в следующем спринте доработку убрали.
В доработках существующего продукта
В спринт-методе можно сразу проверять пользу от доработок, а если они не оправданы — отказываться от них без ущерба для проекта. Например, когда нужно добавить новые функции в сервис, все изменения внедряются постепенно, небольшими порциями. А ещё благодаря поэтапному улучшению приложения пользователям будет проще привыкнуть к изменениям в интерфейсе.
Во всех случаях спринты помогут поддерживать ритм работы. Команда фокусируется на промежуточных результатах и остаётся в тонусе на протяжении всей разработки.
Спринты
Спринты лежат в основе Scrum-метода, который входит в методологию управления проектами Agile. Согласно Agile, на первый план должны выходить взаимодействия между людьми и ценность продукта, а не инструменты. Чтобы добиться нужного результата, рабочие процессы должны быть гибкими, а изменения можно вносить даже во время разработки.
Вот в чём преимущества:
Классический подход
При классическом подходе (его называют водопадной моделью, или Waterfall) команда описывает каждый шаг заранее и следует чёткому ТЗ. Менять требования в процессе разработки нельзя — доработать продукт можно только после его запуска.
Преимущества следующие:
Выбор между водопадной и гибкой моделью зависит от особенностей проекта и сферы бизнеса. Если структура, внешний вид и функции продукта должны соответствовать строгим требованиям, подойдёт Waterfall. Когда необходимо менять продукт в зависимости от обратной связи — стоит внедрить спринты.
Читайте также: «Agile или Waterfall: какую методологию выбрать для разработки проекта, чтобы управлять им эффективнее»
Один из инструментов, который помогает работать по спринт-методу, — Яндекс Трекер. Сервис позволяет управлять всеми проектами компании в одном цифровом пространстве. При этом к нему можно подключить не только разработчиков, но и UX-редакторов, веб-дизайнеров или эйчаров.
Вы можете выбрать один из двух вариантов для подключения Трекера: на всю организацию в составе тарифа Яндекс 360 или только на определённых сотрудников, задействованных в спринте. Подробнее об этих способах читайте в Справке.
В Трекере есть всё необходимое для организации спринтов. Вот что можно делать на платформе.
Вести весь проект на одной доске
Для этого есть доска с бэклогом и спринтами. Нужно добавить список приоритетных задач, распределить их по важности, а затем добавлять в спринты. Один из самых простых способов это сделать — просто перетащить карточку с задачей из бэклога в список со спринтами.
В спринтах выполнение одной задачи нередко зависит от выполнения другой. В Трекере можно показать эту связь ещё при составлении бэклога. Так команде будет проще визуализировать продукт, выстроить план разработки и ориентироваться в рабочем процессе.
На доске есть раздел «Диаграмма сгораний». В нём можно увидеть, насколько быстро выполняются задачи и какой объём работы в спринте ещё предстоит сделать. Это позволит визуализировать прогресс и вовремя заметить, если проект идёт слишком медленно.
Быстро оценивать сложность задач всей командой
Для этого используют технику «Покер планирования». В ней участники выставляют баллы в зависимости от трудоёмкости, а затем сравнивают результаты и приходят к общему соглашению. Например, определяют время спринта в зависимости от его сложности.
В Трекере инструмент «Покер планирования» собирает оценки от каждого участника и рассчитывает итоговый результат автоматически. Он выражается в Story Points — условных единицах, которые показывают сложность задач относительно друг друга.
Задавать и менять настройки доступа
В Трекере есть разные уровни прав, чтобы взаимодействовать с досками. Их владелец может разрешить или запретить следующие действия:
