Scrum
 
2017/11/08 15:44:11

Scrum

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

Содержание

Scrum – наиболее распространенная на рынке гибкая (Agile) методология разработки программного обеспечения. В противоположность традиционному «принципу водопада», согласно которому вся система сдается заказчику одновременно в самом конце проекта, процесс Scrum построен таким образом, что команда разработчиков постепенно добавляет функциональность к системе, работая относительно короткими итерациями, и с определенной периодичностью сдает заказчику работающий код, имеющий реальную ценность для бизнеса. Тем самым минимизируются проектные риски и увеличивается возврат на инвестиции. Обширные исследования показывают, что в случае корректного применения Scrum помогает достичь значительного прироста производительности труда программистов, даже при работе больших команд, участвующих в крупномасштабных, глобально распределенных проектах.

2017: Новая версия руководства по Scrum

7 ноября 2017 года, Кен Швабер и Джеф Сазерленд опубликовали новую версию «Руководства по Scrum». Подготовку русскоязычной версии руководства организовала компания Unusual Concepts.

Главные изменения коснулись областей, где может применяться Scrum. Список существенно расширен и дополнен: теперь Scrum официально может использоваться абсолютно везде, если разработка идет в условиях неопределенности. Scrum можно применять в любой отрасли. За период с 1993 по 2017 годы Scrum применялся в огромном количестве разных контекстов:

  • управлении организациями (движение со-автора первой книги по Scrum и «Манифеста Аджайла» Майка Биддла Enterprise Scrum);
  • обучении (eduScrum движение, которое даже реализовало свою версию «Руководства по Scrum» для обучающих проектов);
  • разработки автомобиля;
  • маркетинге и продажах;
  • управлении профессиональным развитием.

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

«Scrum был изначально разработан для разработки и управления продуктами и их разработки. С начала девяностых Scrum активно используется по всему миру, чтобы:
  • исследовать и выявлять жизнеспособные рынки, технологии и возможности продуктов;
  • разрабатывать продукты и улучшать их;
  • выпускать продукты и их обновления по несколько раз в день;
  • разрабатывать и поддерживать облачные технологии (онлайн, безопасно, по требованию) и другие среды для использования продуктов;
  • поддерживать и обновлять продукты.

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

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

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

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

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

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

Если у вас есть хотя бы одно из этих «показаний», пробовать нужно.

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

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

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

1995: Появление Scrum

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

Процедура сертификации Scrum-компетенции (Scrum Capability Assessment)

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

Смотрите также