Журнал / Польза

Как командам выпускать продукты быстрее с помощью Agile и Scrum

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

Что такое Agile

Многие годы разработка программного обеспечения (ПО) велась по каскадной модели. Она подразумевает, что каждый следующий этап работы начинается в конце каждого спринта (так называют единицу планирования по времени) . Например, в первую очередь владелец продукта прописывает требования, потом команда проектирует архитектуру приложения, затем переходят к разработке и только в конце тестируют продукт, собирают обратную связь и занимаются внедрением.

Но так страдало качество приложения: продукт выпускали недоделанным и не успевали его протестировать — не хватало времени.

Эти проблемы решил Agile — гибкий подход к управлению проектами. Его разработала группа проектных менеджеров из разных стран мира в 2001 году. Они сформулировали четыре ценности Agile методологии и Scrum методологии и оформили их в манифест:

Люди и взаимодействие важнее процессов и инструментов. Важно регулярное общение между членами команды и заказчиком. Команда не ограничена строгими правилами и сама выбирает инструменты, чтобы достичь решения.

Работающий продукт важнее исчерпывающей документации. Самое важное — рабочий продукт. Чтобы не затягивать с его выпуском, можно пренебречь технической документацией и отчетностью.

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

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

Agile дает командам больше свободы: участники могут менять методы, подходы и инструменты во время работы над проектами, отказываться от задач, которые не ведут к цели, не следовать инструкциям, если они отличаются от удобных методов работы. Методология ускоряет согласование продукта — оно происходит в процессе работы, а не после того, как закончились все этапы разработки. Это помогает выпустить качественный продукт в короткие сроки.

Scrum: метод работы в Agile

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

Во время работы над продуктом по Scrum у всех участников рабочего процесса есть роли и задачи.

таблица (1).png

Как устроен процесс работы по Scrum

Владелец продукта собирает список задач. Возможно, какие-то из них окажутся ненужными, но на этом этапе важно записать все идеи по проекту.

Scrum-мастер организует встречу команды. В Scrum принято собирать небольшую команду из 3–9 человек, чтобы им было комфортно общаться между собой.

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

Цель спринта всегда должна вести к цели продукта

Хорошие примеры целей спринта в методологии Agile и Scrum:

— выкатить в релиз функциональность кнопки «Оплатить» и получить минимум одну транзакцию от пользователя;

— привлечь не менее 1000 пользователей в продукт;

— увеличить средний чек на 10%;

— увеличить среднее количество товаров в корзине на 20%.

Плохие примеры целей спринта:

— взять в работу стратегию развития на месяц;

— сделать не менее 10 задач из бэклога;

— сортировать бэклог по ценности задач;

— написать не менее 1000 строчек кода.

Михаил Ряженка, LeadStartup.ru

Участники команды также договариваются, какое количество задач в рамках цели они успеют сделать за спринт. В гибких методологиях советуют закладывать на короткий спринт не больше двух недель. За это время разработчики создают кусочек продукта, который готов к использованию.

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

Каждый участник отвечает на вопросы:

  1. Что я сделал за вчера для достижения цели?

  2. Что я планирую взять в работу?

  3. Какие есть преграды и помехи на пути к цели?

Задача не просто отчитаться перед scrum-мастером, а выявить проблемы, если они есть, и найти совместные решения. Рекомендуемое время для таких встреч — до 15 минут.

Чтобы эффективнее достигать цели спринта при использовании методологии Agile и технологии Scrum, рекомендуется визуализировать весь бэклог и движение по нему на онлайн-доске. Например, можно использовать платформы Miro, Mural, Zoom, MS Whiteboard, Kaiten.

Scrum-мастер организует встречу-ревью. На ней команда показывает результаты работы. Участники обсуждают их и получают обратную связь от владельца продукта.

Команда собирается на ретроспективу (или «ретро»). Это встреча, на которой участники разбирают, насколько успешным был спринт и как эффективно достичь цели следующего спринта.

Если в конце каждого спринта команда понимает, что не успевает закончить работу над задачами, спринт не продлевается. Недоделанные задачи переносятся на следующий спринт. Команда на ретроспективе анализирует, почему не получилось выполнить такой объем. Это важно — иначе команда не научится понимать, сколько задач реально сделать за один короткий спринт.

Чтобы внедрить методологии Agile и Scrum в компанию, нужно желание топ-менеджмента. Для начала руководители должны сами мыслить ценностями Agile и транслировать их через встречи с командой и конференции. Затем можно добавлять элементы Scrum. Например, ежедневные встречи с командой или спринты с ретроспективой.

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

Что еще почитать по Agile

Scrum Guide. Базовое руководство по технологии Scrum, его написали создатели методики — Кен Швабер и Джефф Сазерленд. Оно поможет больше узнать о ролях и правилах в Scrum.

«Коучинг agile-команд», Лисса Адкинс. Руководство по Agile, в котором описано, как создать обстановку для успешной работы самоорганизующихся команд.

«Scrum и XP: заметки с передовой», Хенрик Книберг. Автор книги дает много рекомендаций из практики: какие элементы технологии Scrum обязательно нужно внедрять, а какие можно упустить, как организовать работу команды.

«Канбан Метод. Улучшение системы управления», Барроуз Майк.Руководство по методу канбан. Автор рассказывает, как канбан связан с Agile и Scrum, как мыслить системно и ограничивать количество задач, чтобы работать эффективно.