Как перевести команду на Scrum

Как не перепутать Scrum и Agile, познакомиться с терминами и понять, нужен ли вам именно этот подход.

Scrum — один из способов управлениями проектами в Яндексе. Он отличается чётко зафиксированными ролями (например, когда дизайнер привязан к одной команде, а не работает над разными задачами сервиса) и итерациями — короткими этапами работы над продуктом. Проджект-менеджер Светлана Давыдова рассказала, как перевела несколько команд в Яндекс.Поиске на Scrum, какие ещё существуют методы управления проектами и как стать хорошим Scrum-мастером.

Что такое Scrum и зачем его использовать

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

Люди нередко путают Scrum с Agile. Но Agile — это образ мышления, внутри которого существуют разные методологии: так, помимо Scrum, популярностью пользуется Канбан.

Я рекомендую начинать со Scrum: в нём всё жёстко прописано, и он помогает систематизировать процессы тем, кто до этого жил в хаосе. А когда команда научится работать эффективно, можно перейти на более гибкий Канбан или совмещать сразу несколько фреймворков.

Как устроен Scrum

Роли в Scrum распределяются так: есть product owner — менеджер, который отвечает за стратегию и общее видение продукта, непосредственно команда разработки и Scrum-мастер, который помогает команде организовать работу и стать самостоятельной.

Работа по Scrum сосредоточена вокруг бэклога — списка приоритизированных задач, касающихся продукта. Для того, чтобы реализовать задачи из списка, проводятся рабочие итерации (или спринты), которые могут длиться от недели до месяца в зависимости от продукта и его сложности. В командах Поиска, в которых я работаю, итерации обычно занимают две недели. За это время можно добавить несколько фич или сделать небольшую часть продукта.

В каждую итерацию обязательно включаются несколько активностей: её планирование, стендапы (ежедневные встречи команды), демонстрация продукта пользователям и заказчикам и ретроспектива (работа над улучшением процесса).

Итерации начинаются с планирования. Команда и её продакт-менеджер определяют, какое количество задач из бэклога можно успеть сделать за спринт. В процессе итерации команде важно устраивать короткие ежедневные встречи, на которых она может синхронизироваться и оценивать свой прогресс. В конце каждого спринта проходят демонстрация и ретроспектива. Демонстрация — это встреча, на которой команда показывает итоги спринта всем заинтересованным лицам (например, заказчику или фокус-группе) и собирает обратную связь по продукту. А на ретроспективе обсуждаются результаты спринта: эта встреча позволяет отследить прогресс и отрефлексировать допущенные ошибки.

227

Помимо этих встреч есть ещё процесс уточнения бэклога, когда продакт-менеджер встречается с членами команды и обновляет или уточняет задачи, стоящие в бэклоге. Уточнение должно занимать не больше 10% от рабочего времени команды — это вспомогательная активность.

Зачем вам использовать Scrum

Внедрение Scrum стоит начать с ответа на вопрос: «Нужно ли это моей команде?» Если у вас нет проблем в организации процессов, то, может быть, внедрять ничего и не нужно. Также важно понять, чего вы стремитесь добиться в результате.

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

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

Использование Scrum может предложить кто угодно, но обычно это делает продакт-менеджер. В 2014 году в Поиске переход на этот фреймворк тоже инициировал менеджер продукта. Мы столкнулись с проблемами развития турецкого Поиска: работа шла медленно, дедлайны постоянно отодвигались.

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

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

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

Внедрение Scrum

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

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

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

Затем нужно определиться со списком задач для работы — бэклогом. У команды, которая только начинает работать по Scrum, может быть много сырых задач и проблемы с приоритетами. Поэтому я рекомендую потратить день или два, чтобы разобрать бэклог: не только распределить работу, но и объяснить другим, почему та или иная задача первоочерёдная.

Занимаясь внедрением Scrum, команды обычно наступают на одни и те же грабли. Например, сложности возникают, когда у продакта нет достаточного контроля над продуктом. В таком случае после проведения очередного спринта ему могут сказать, что результат не тот, команде придётся всё переделывать и планирование собъётся.

На старте работы по Scrum сложно предугадать, сколько задач команда успеет сделать за итерацию: в первые разы вам вряд ли удастся сделать всё, что вы запланировали. Это нормально: постепенно вы лучше поймёте уровень продуктивности команды и будете работать в соответствии с ним.

Следить за результатами можно с помощью разных инструментов: от стикеров и таблиц до специально приспособленных трекеров.

Оценить результаты применения Scrum можно по тому, как быстро вы выполняете привычные задачи. Если работа ускорилась и вы не срываете дедлайны, то, скорее всего, внедрение произошло удачно. Важна и обратная связь по качеству: её можно получить от заказчиков на презентациях решений.

Как стать мастером Scrum

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

Для того, чтобы стать мастером, важно хорошо ознакомиться с методологией Scrum. Пятиминутного чтения статьи для этого точно не хватит. А полученные знания пригодятся вам не только в карьере. Я, например, использую в обычной жизни итеративную работу над какими-то большими задачами и провожу ретроспективы: размышляю, что мне хорошо удалось, а что — пока нет.

Полезные материалы

Essential Scrum — Кеннет Рубин

Agile Retrospectives — Эстер Дёрби

«Я слышу вас насквозь» — Марк Гоулстон

Видео про роль продакт-менеджера в Scrum

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

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

227

Краткий пересказ от YandexGPT