Что такое Scrum? Объяснение от Digimagg

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

июнь 20, 2024 - 12:32
июль 19, 2024 - 11:22
Что такое Scrum? Объяснение от Digimagg
Scrum

Понимание Scrum

Scrum, гибкий подход к управлению проектами, предлагает командам структурированную структуру, основанную на ценностях, принципах и практиках. Подобно команде по регби, готовящейся к матчу, Scrum способствует обучению на основе опыта, самоорганизации и размышлению для повышения производительности. Хотя Scrum обычно ассоциируется с разработкой программного обеспечения, адаптивность Scrum делает его применимым в различных сценариях командной работы, что способствует его широкой популярности. В этой статье рассматриваются основные компоненты традиционной структуры Scrum, изложенные в Руководстве по Scrum, а также идеи Дэвида Уэста, генерального директора Scrum.org. Кроме того, мы рассмотрим, как организации часто адаптируют Scrum к своим уникальным требованиям.

Agile против Scrum

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

Отличие Agile от сущности Scrum заключается в руководстве по Scrum и манифесте Agile, в котором определены четыре основные ценности:

  • Приоритизация отдельных лиц и взаимодействий над процессами и инструментами
  • Предпочтение работающему программному обеспечению комплексной документации
  • Содействие сотрудничеству с клиентами по контрактным обязательствам
  • Приоритет адаптивности над строгим соблюдением планов

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

Scrum фреймворк

Структура Scrum определяет набор ценностей, принципов и практик, которыми руководствуются Scrum-команды при доставке продуктов или услуг. Он определяет членов команды и их роли, определяет ключевые «артефакты», формирующие продукт, и описывает церемонии Scrum, облегчающие рабочий процесс команды.

Состав Scrum-команды

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

Скрам-мастер

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

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

Владелец Scrum-продукта

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

  • Формирование и контроль бэклога продукта.
  • Тесное сотрудничество как с бизнесом, так и с командой для обеспечения ясности в отношении элементов невыполненной работы.
  • Предоставление четких указаний команде относительно расстановки приоритетов функций.
  • Принятие решений о сроках выпуска продукта, отдавая предпочтение частым поставкам.

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

Скрам-команда разработчиков

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

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

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

Scrum артефакты

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

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

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

3. Прирост или цель спринта представляет собой ощутимый результат, достигнутый в конце спринта. Часто демонстрируемый во время демонстраций в конце спринта, он демонстрирует, что выполнила команда. Хотя «приращение», возможно, не является широко используемым термином за пределами определенного контекста, оно может быть синонимом командного определения «Готово», вехи или цели спринта. Команды различаются в своих интерпретациях: некоторые стремятся выпускать релизы для клиентов в конце каждого спринта, тогда как другие, работая в более длительных циклах, сосредотачиваются на завершении частей более крупных версий. Гибкость в определении артефактов имеет решающее значение, обеспечивая соответствие потребностям команды и открытость к адаптации для повышения эффективности и снижения стресса.

Scrum-церемонии или мероприятия

Вот подборка основных церемоний, в которых может участвовать Scrum-команда:

1. Организация резервной копии

Эта задача, которую иногда называют «уходом за отставанием», лежит на владельце продукта. Их основная роль — направить продукт в соответствии с его видением, последовательно оценивая потребности рынка и клиентов. Таким образом, они поддерживают отставание, учитывая отзывы пользователей и команды разработчиков, чтобы эффективно расставлять приоритеты задач.

2. Планирование спринта

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

3. Выполнение спринта

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

4. Ежедневный Скрам или Стендап

Это короткое ежедневное собрание, обычно проводимое утром, призвано обеспечить простоту и эффективность. Хотя обычно оно ограничено 15 минутами, основное внимание уделяется тому, чтобы все соответствовали цели спринта и наметили планы на день. Члены команды могут решать проблемы или препятствия, мешающие прогрессу.

5. Обзор спринта

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

6. Ретроспектива спринта

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

Scrum-ценности

В 2016 году Scrum Guide представил пять основных ценностей, которые считаются необходимыми для успеха Scrum-команд. Эти ценности обеспечивают руководящую основу для работы, действий и поведения команды.

Обязательство

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

Храбрость

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

Фокус

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

Открытость

Ежедневные стендапы способствуют открытости, побуждая членов команды обсуждать текущую работу и устранять любые препятствия. Такие вопросы, как «Над чем я работал вчера?» и «Какие проблемы меня блокируют?» способствовать отслеживанию прогресса и решению проблем, способствуя развитию культуры прозрачности.

Уважать

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

Scrum, Kanban, и Agile

Scrum, широко распространенная Agile-структура, часто ошибочно путают с самой Agile. Однако существуют альтернативные методологии, такие как Канбан, которые завоевали популярность. Некоторые организации выбирают гибридный подход, сочетающий элементы Scrum и Kanban, известный как «Scrumban» или «Kanplan».

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

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

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

Начиная со схватки

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