banner banner banner
Все о SCRUM. Изучение, разработка, интеграция
Все о SCRUM. Изучение, разработка, интеграция
Оценить:
Рейтинг: 0

Полная версия:

Все о SCRUM. Изучение, разработка, интеграция

скачать книгу бесплатно

Ориентируясь на этот список задач, команда непрерывно работает, условно разделяя весь процесс на события спринта:

? Первое событие в начале спринта – согласование цели и подготовка к работе.

? Второе событие – это ежедневная синхронизация команды для достижения общей цели.

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

1.1.3 Истоки Scrum

Scrum не аббревиатура. Это слово взято из игры в регби: в английском языке scrum означает схватка. Чтобы отличать одно от другого, к нашему Scrum добавили заглавную букву.

Вот почему мы не пишем SCRUM. И вот почему мы произносим именно так: скрам. Если хотите убедиться в своем правильном произношении, включите матч по регби с англофонным арбитром.

Рисунок 1.1 – Схватка

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

? был пас вперед;

? мяч был выбит в аут.

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

В 2005, когда я впервые представлял Scrum на конференции, я много говорил о его связи с регби. Вот выдержка из моего выступления:

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

• Почему именно регби?

Оба основателя Scrum – американцы. В США особо не играют в регби со схватками. Почему же именно этот вид спорта?

Отсылка к регби появилась в статье 1986 года, написанной японцами. Они любят эту игру вместе с ее схватками. Там было описано, как компании Honda, Canon, NEC и Fuji-Xerox демонстрируют совместный подход к разработке своих продуктов, и подчеркивалась важность автономных и самоуправляемых команд. Авторы сравнили такой формат работы с игрой в регби:

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

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

1.1.4 В чем Scrum принципиально отличается?

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

Рисунок 1.2–6 свойств Scrum

1. Появление нового

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

2. Приоритизация

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

3. Предприимчивость

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

4. Прозрачность

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

Рисунок 1.3 – Визуальный менеджмент

5. Практика

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

Эмпирический подход выражается в трех принципах: прозрачность, проверка и адаптация.

6. Постоянный ритм

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

1.1.5 Где найти справочные материалы по Scrum?

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

В 2010 Джефф Сазерленд и Кен Швабер опубликовали небольшой документ – «Руководство по Scrum» («The Scrum Guide»).

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

Это руководство – надежный источник информации о Scrum.

В начале 2017 года компания 3Back опубликовала статью объемом около двадцати страниц, в которой предлагалось развить концепцию Scrum. Авторы – Дэн Роастхорн и Дуг Шимп – ранее уже написали весьма содержательную книгу «Исследуя Scrum»[5 - Ориг. назв.: Exploring Scrum, The Fundamentals. – Прим. ред.]. Их новая статья называлась «Обзор Scrum 3.0» (Scrum 3.0 overview [6 - 3Back, Scrum3.0, Web, 2017. https://3back.com/scrum30/ – Прим. авт.])

В предыдущем издании этой книги я рассматривал некоторые паттерны, предложенные Роастхорном и Шимпом.

В этом пятом издании у меня следующая позиция: в Scrum 3.0 действительно есть интересные мысли.

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

1.2 Agile-движение

1.2.1 Аgile-манифест

Термин Аgile, тесно связанный со Scrum, появился в сфере разработки ПО в документе под названием «Agile-манифест».

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

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

? Люди и взаимодействие важнее процессов и инструментов.

? Работающий продукт важнее исчерпывающей документации.

? Сотрудничество с заказчиком важнее согласования условий контракта.

? Готовность к изменениям важнее следования первоначальному плану.

Публикация Agile-манифеста вызвала громкую положительную реакцию и дала старт новой моде: упрощению процессов.

Помимо четырех основных ценностей, Манифест содержит двенадцать принципов. Ниже я цитирую первый, ключевой:

Наивысшим приоритетом для нас является удовлетворение потребностей заказчика, благодаря регулярной и ранней поставке ценного программного обеспечения.

Scrum стоит под знаменем Agile-манифеста. Два его основателя также входят в число 17 подписавших документ.

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

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

1.2.2 Аgile-практики

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

Практики, описываемые как гибкие, или Agile-практики, существовали и до Манифеста, а некоторые – задолго до него.

К примеру, еще в начале 1980-х сообщество разработчиков программного обеспечения рекомендовало совершать короткие циклы разработки (так называемая итеративная разработка).

Некоторые практики появились вместе с Agile-движением и со временем стали незаменимыми, многократно подтверждая свою эффективность. Среди них можно отметить ежедневные совещания (схватки, или собственно Scrum).

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

1.2.3 Аgile-методика

Scrum и Экстремальное Программирование (XP) существовали и до Манифеста. После его подписания и публикации они стали считаться Agile-методами, в то время как другие попали в список отсталых и утратили популярность. С недавнего времени к семье Agile присоединился Kanban [7 - Kanban появился среди Agile-методов совсем недавно; на самом же деле Lean Software, где зародился Kanban, опирался на фундамент, заложенный еще производственной системой заводов Toyota в 1950-х годах. – Прим. авт.].

Рисунок 1.4 – Быть гибким с Agile-методикой

По статистике проводимых год за годом опросов, Scrum – самый популярный из трех. Scrum и Agile – слова, которые мы часто произносим в речи и складываем друг с другом, будь то предложение о работе или статья об Agile Scrum. Но мы убедились, что Scrum на самом деле не метод [8 - Kanban также не является Agile-методом, это скорее метод улучшения процесса или метод управления потоком. В конце концов, остается только Экстремальное Программирование, которое можно назвать методом. – Прим. авт.].

1.2.4 Аgile-режим

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

Однако Scrum потерял смысл в этом Agile-режиме разработки программного обеспечения [9 - Как и не стоит обращаться к Scrum, чтобы войти в Agile-режим. – Прим. авт.].

1.2.5 Agility

• За пределами информационных технологий

Agile-манифест объединил в себе Аgile-методы и породил целое Agile-движение, сильно набравшее обороты за последние годы. Scrum теперь известен и распространен во многих организациях, пройдя путь от первых адептов до большинства крупных компаний, которые им заинтересовались.

Scrum берет начало в разработке ПО, но сейчас широко используется и за пределами ИТ:

? в маркетинге и торговле;

? в сфере цифровых технологий;

? при разработке оборудования (hardware) и систем, включающих программное обеспечение.

Марк Андриссен, основатель Netscape, произнес известную фразу: софт пожирает мир.

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

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

• Аgile-менеджмент

Управление меняется. Новые подходы[10 - Steven Denning, Radical Management. – Прим. авт.] идут в ногу с Agile-принципами.

Тем не менее, все инициативы, претендующие на название Agile-менеджмент, исходят не от движения, появившегося вслед за Манифестом. Сейчас самое время попытаться определить, что такое Agility.

• Определение Agility

Джим Хайсмит, один из подписантов Манифеста, так определяет Agility по отношению к изменениям:

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

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

Agility – это способность организации приносить максимум ценности, часто и своевременно, и адаптироваться к изменениям в своей среде.

Из этого определения ясно, что гибкость относится не только к команде, но и к организации.

• Agile организация

Принципы освобожденных компаний (liberated companies) также имеют много общего с Agile-движением с точки зрения ценностей и важности человеческого фактора.

Работа Фредерика Лалу[11 - Frederic Laloux, Reinventing Organizations. – Прим. авт.], посвященная успешным новым организациям, выдвигает на первый план принципы бирюзовых организаций (teal organisations), идущих в ногу с Agile.

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

Рисунок 1.5 – Agility – трамплин, чтобы выбраться с галеры на свободу

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

Для большинства организаций ценности и принципы Agility по-прежнему носят подрывной характер (хотя ценности при этом весьма быстро изымаются) и идут вразрез с доминирующей культурой.

Если организации, практикующие Scrum, не согласны с духом Agility, который несут Scrum-команды, несоответствие довольно скоро вызовет перебои. Необходим комплексный подход.