теория Scrum (1035336), страница 2
Текст из файла (страница 2)
В методологии скрам команда является самоорганизующейся и самоуправляемой. Команда берет на себя обязательства по выполнению объема работ на спринт перед владельцем продукта. Работа команды оценивается как работа единой группы. В скрам вклад отдельных членов проектной команды не оценивается, так как это разваливает самоорганизацию команды.
Обязанности команды таковы:
-
Отвечает за оценку элементов резерва продукта
-
Принимает решение по дизайну и имплементации
-
Разрабатывает софт и предоставляет его заказчику
-
Отслеживает собственный прогресс (вместе со скрам мастером).
-
Отвечает за результат перед владельцем продукта
Размер команды ограничивается размером группы людей, способных эффективно взаимодействовать лицом к лицу. Типичные размер команды - 7 плюс минус 2.
Команда в Скрам кроссфункциональна. В нее входят люди с различными навыками - разработчики, аналитики, тестировщики. Нет заранее определенных и поделенных ролей в команде, ограничивающих область действий членов команды. Команда состоит из инженеров, которые вносят свой вклад в общий успех проекта в соответствии со своими способностями и проектной необходимостью. Команда самоорганизуется для выполнения конкретных задач в проекте, что позволяет ей гибко реагировать на любые возможные задачи.
Для облегчения коммуникаций команда должна находиться в одном месте (colocated). Предпочтительно размещать команду не в кубиках, а в одной общей комнате для того, чтобы уменьшить препятствия для свободного общения. Команде необходимо предоставить все необходимое для комфортной работы, обеспечить досками и флипчартами, предоставить все необходимые инструменты и среду для работы.
Жизненный цикл проекта
Рассмотрим наиболее привычный жизненный цикл проекта, над которым работают по методологии Scrum. Пусть все юридические и бюрократические детали разрешены, и все готовы к началу нового проекта.
Первым делом организуется первое планирование спринта, на котором присутствуют все: заказчик, пользователи, все участники разработки. Цель этого совещания – составить резерв продукта. Все пожелания (истории) заказчика записываются, команда их оценивает в очках истории. В результате такого совещания должна сформироваться очередь продукта, отсортированная в порядке значимости для клиента.
Рис. 4. Первый этап работы над проектом
Иногда выделяют нулевой спринт[7], в ходе которого команда изучает технологии, которые необходимо будет применять в проекте, настраивает инструменты разработки и проводит другие подготовительные работы. Так же иногда в ходе этого спринта изменяется резерв продукта, так как становятся очевидны какие-то трудности, не выявленные ранее.
Из этого списка задач команда набирает задачи на текущий спринт с учетом из средней производительности (после нескольких спринтов команда способна оценить свою производительность в очках истории на спринт), и тут же происходит совещание, целью которого является обсуждение предстоящего спринта, но уже только в составе команды, скрам мастера и владельца продукта.
Каждая история разбивается на подзадачи, длительность которой не должна превышать 12 часов. В результате формируется список задач, который распределяется между командой, и после этого все принимаются за работу – начинается спринт.
В начале каждого дня на протяжении спринта проводиться ежедневные митинги, задача которых контролировать ситуацию на текущем спринте.
Спринт может быть закончен раньше положенного срока по двум причинам:
-
Команда выполнила все задачи из резерва спринта
-
Команда точно не успевает выполнить поставленные задачи к концу спринта.
Если для текущего спринта был намечен выпуск новой версии продукта, то по завершению текущей итерации продукт демонстрируется заказчику, собираются отзывы и проводится тестирование продукта. После этого команда вновь организует планирование спринта и процесс повторяется. Если же для текущей итерации выпуск продукта намечен не был, то сразу после окончания организует новое планирование спринта.
Так же в конце каждого спринта организуется обзор итогов спринта и ретроспектива спринта. Первое проводится с целью показать инкремент функциональности и является средством мотивации членов команды для дальнейшей работы. Как правило, такие собрания полностью открыты для сотрудников компании. Второе является анализом прошедшего спринта: участники команды высказываются о своих успехах и неудачах в ходе прошедшего спринта, пытаются решить внутренние конфликты и возникшие проблемы.
Рис. 5. Жизненный цикл проекта при его разработке по методологии Scrum.
На рисунке 6 представлена схема процесса разработки в общем виде и активные роли на каждом этапе.
Рис.6. Схема процесса разработки по Scrum.
Scrum – это набор ценностей.
В настоящее время данный подход является очень распространенным и многие, наслушавшись позитивных отзывов об успешном внедрении данной методологии, начинают пытаться внедрять её и в своих компания.
Однако следует учитывать, что Scrum – не панацея от пропущенных сроков и низкой производительности. Многие команды попросту не могут работать в таком режиме, и чтобы понять это, им надо попробовать. При этом любой человек не любит перемены, поэтому поначалу производительность команды может упасть, а её моральный дух будет подавлен.
Поэтому к скраму следует относиться не как к набору правил, которые следует выполнять, а как к некому инструменту, которым необходимо уметь пользоваться и применять только в уместных ситуациях.
Минусы Scrum
-
Успех проекта в большей степени зависит от владельца продукта – стоит ему допустить ошибку и команда пойдет по ложному пути.
-
Скраму без разницы как делаются детали. Методология подразумевает, что команда способна само развиваться и находить лучшие решения для поставленных задач. Зачастую это не так.
-
Скрам не прививает любовь к скорости разработки. Если команда не успевает в спринт выполнить все задачи, она собирается и обсуждает это, но это не означает, что её скорость вырастет в следующем спринте. Как раз наоборот – у команды появиться соблазн просто взять поменьше задач в следующий раз.
-
Скрам не позволяет «быстро» исправлять ошибки, так как менять писок задач на спринт нельзя. Поэтому заказчик вынужден ждать исправления ошибки как минимум до конца следующего спринта.
-
При внедрении скрама в работу происходит переразделение полномочий и обязанностей. Это приводит к тому, что некоторые отделы (например, тестирования) становятся не нужными, как таковые. В то же время команда должна теперь сама думать за все эти отделы. Такое перераспределение полномочий может сильно пошатнуть сложившийся «микроклимат» в коллективе компании.
-
При неправильной подаче скрам может мотивировать команду к скорости работы, но не к качеству. Таким образом, первые несколько итераций будут феноменальными по скорости и продуктивности. Однако при увеличении количества написанного кода, продуктивность будет неизбежно падать и наконец, из-за небрежности в начале, проект превратиться в снежный ком, который будет катиться сам по себе в каком-то направлении.
Список литературы
1. Scrum [Электронный ресурс] // Википедия : [Сайт]. [2012]. URL: http://ru.wikipedia.org/wiki/Scrum
2. Agilerussia [Электронный ресурс] // Сайт, посвященный гибким методологиям : [Сайт]. [2012]. URL: http://agilerussia.ru/
3. Хенри Книберг, Scrum и XP: Заметки с передовой. [Электронная книга] // электронная версия книги: [Сайт]. [2011]. URL: http://scrum.org.ua/wp-content/uploads/2008/12/scrum_xp-from-the-trenches-rus-final.pdf
4. Мой взгляд на Scrum [Электронный ресурс] // Коллективный блог habrahabr : [Сайт]. [2012]. URL: http://habrahabr.ru/post/150203/
5. Обзор методологии SCRUM [Электронный ресурс] // портал для аналитиков: [Сайт]. [2012]. URL: http://citforum.ru/SE/project/scrum/
6. Agile burn-down chart [Электронный ресурс] // Blog for PM: [Сайт]. [2012]. URL: http://www.certschool.com/blog/agile-burn-down-charts/
7. Рассуждения о нулевой итерации в Scrum [Электронный ресурс] // Коллективный блог habrahabr : [Сайт]. [2012]. URL: http://habrahabr.ru/post/173621/
8. А.И. Долженко, Технологии командной разработки программного обеспечения информационных систем [Электронный ресурс] // Интернет университет: [Сайт]. [2012]. URL: http://www.intuit.ru/department/se/techcomdevsw/1
9. Victor Ronin, О чем молчит SCRUM [Электронный ресурс] // личный блог: [Сайт]. [2012]. URL: http://victorronin.com/2010/07/17/o-chem-molchit-scrum-chast-1/