Agile Scrum на проекте с удалённой командой разработчиков

Дарья Казовская

Дарья Казовская

IT-копирайтер

#Инсайты

21 Апр 2016

Время чтения: 7 минут

21 Апр 2016

Сегодня Scrum является одной из самых востребованных методологий Agile разработки. Её высокая популярность обусловлена относительно простым подходом к организации процесса разработки ПО. Scrum-методология требует чёткого определения производственных и временных ресурсов. Настраивает команду проекта на самоорганизацию. Помогает сдавать работы строго поэтапно.

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

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

Как концепция Scrum воплощается в проектах с удалённой командой разработчиков

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

Один из наших недавних проектов по созданию мобильного приложения Chefkoch Academy как раз и был реализован в соответствии с концепцией Scrum. В рамках этого проекта наша команда была привлечена к разработке и тестированию с участием Scrum-мастера и Product Owner со стороны компании-заказчика.

Работы проходили в интенсивном режиме, с ежедневными 15-минутными видеоконференциями всей команды проекта. Каждый спринт занимал 2 недели. За это время команда успевала разбить требования на задачи, спланировать работы на данный отрезок времени и выполнить запланированные на спринт задачи.

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

Что гарантирует успех Scrum-проекта с удалёнными разработчиками

 

1. Самоорганизация команды под контролем Scrum-мастера

Самоорганизация команды под контролем Scrum-мастера

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

В целом, организация работ начинается с определения требований. Product Owner формулирует требования и расставляет приоритеты в Product Backlog, а также осуществляет приём выполненных работ. Он является представителем заказчика в проекте, тогда как Scrum-мастер заботится о команде.

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

При этом он не раздает задачи участникам проекта (поскольку Sprint Backlog команда формирует сообща) и не определяет приоритетность задач как Product Owner. На деле Scrum-мастер является одним из главных консультантов по всем вопросам проекта. Именно он несёт ответственность за весь процесс и конечный результат.

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

2. Ограниченное число членов команды

Ограниченное число членов Scrum команды

Команда в Scrum должна подбираться так, чтобы обеспечить многофункциональность. Другими словами, команду составляют специалисты с различными навыками работы – разработчики, аналитики, тестировщики, дизайнеры. Вместе с тем, нет заранее определенных функций, способных ограничить вклад каждого участника. Фактически обеспечивается свобода действий.

Однако при удалённой разработке, чтобы команда не распылялась на разнообразные задачи и оставалась организованной, необходимо строго ограничить число членов команды в соответствии с проектом. Исходя из нашего опыта, оптимальное число участников – от 3 до 5 без учёта Scrum-мастера и Product Owner. В это число входят: 1-2 front-end или мобильных разработчика (в зависимости от проекта), 1 back-end разработчик, 1-2 тестировщика. Так все успевают донести свои мысли во время встреч и выслушать других, а сами ежедневные обсуждения лицом к лицу не растягиваются до бесконечности.

3. Тщательное планирование действий

Тщательное планирование действий

Все участники команды проекта Chefkoch Academy сошлись во мнении, что залог успеха удалённой работы в Scrum – детальное планирование спринта. Постановка задач и определение планируемой к разработке функциональности осуществляются в виде Sprint Backlog. В идеале это делается, когда текущий спринт уже закончен, а новый еще не начался. Но, на практике это не всегда осуществимо и поэтому может выполняться в течение двух первых митингов. В это время особенно важно не упустить из внимания ни одно требование. Всегда уточнять, если что-то непонятно хотя бы одному из членов команды.

Планирование спринта в любой момент может привести к полёту фантазии заказчика, поэтому нужно следить, чтобы пожелания Product Owner не конфликтовали с предыдущими спринтами и общей идеей проекта. По факту, команда во время планирования фиксирует пул задач на спринт, который не меняется во время спринта.

Если вы не имеете чёткого представления о задаче в самом начале спринта, то лучше сразу задать уточняющие вопросы Scrum-мастеру, либо отложить задачу и переадресовать требование на доработку Product Owner.

Важно, чтобы каждый из участников команды понимал, что внесение изменений в Sprint Backlog во многом противоречит самой идее Scrum. Это может привести к неконтролируемому росту числа задач, срыву сроков и, как следствие, смещению приоритетов в разработке.

4. Поддержание регулярной коммуникации

Коммуникации на Scrum проекте

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

5. Сдача спринта день в день — не сдвигать сроки

Сдача спринта день в день

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

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

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

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

  • самоорганизации,
  • тщательного планирования,
  • регулярных переговоров,
  • тайм-менеджмента,
  • контроля за числом участников.

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

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

Комментарии

Фильтр

Закрыть

Технологии

Индустрии