Agile, Scrum и Microsoft Project
Статья Алексея Просницкого, РМР, MVP (Компания Leo Consulting), первоначально опубликованная здесь.
В данной статье я расскажу о дружбе Agile, Scrum и Microsoft Project Server/Online
Для начала несколько слов о том, что такое Agile. Agile software development (Гибкая методология разработки) - серия подходов к разработке программного обеспечения, ориентированных на использование итеративной разработки, динамическое формирование требований и обеспечение их реализации в результате постоянного взаимодействия внутри самоорганизующихся рабочих групп, состоящих из специалистов различного профиля.
Особенно интересен манифест Agile, состоящий из 4 идей и 12 принципов.
Мы остановимся на таком аспекте, как «использование итеративной разработки» и настройка Microsoft Project Server/Online для управления итеративной разработкой, что идет в разрез с традиционными подходами (например, модель водопада), декларируемыми PMI/IPMA. Обсудим эти вопросы на примере Scrum.
Жизненный цикл разработки программного обеспечения состоит из спринтов, которые в свою очередь состоят из итераций, которые в свою очередь состоят из ежедневных Scrum встреч, Рисунок 1.
Рисунок 1. Жизненный цикл разработки в Agile
Итак, для того, чтобы в Microsoft Project Server/Online можно было вести проекты согласно методологии Scrum, нужно для начала создать шаблон разработки, представленный на Рисунке 2.
Рисунок 2. Шаблон план-графика проекта с использованием Agile-подходу Scrum
На верхнем уровне шаблон план-графика состоит из квартальных спринтов.
В рамках каждого спринта должны быть разработаны (быть готовы для релиза) определенные компоненты/функционал программного обеспечения (ПО). Длительность разработки каждого компонента не должна быть больше длительности спринта, что естественно.
Каждый компонент в спринте разбивается на пользовательские истории (User Story), по результатам которой должна быть создана какая-то часть функциональности компонента ПО ( Рисунок 3).
Каждая итерация зависит одна от другой и зависит от окончания пользовательской истории, Рисунок 3.
Рисунок 3. Детализированный шаблон план-графика проекта Scrum
Создав шаблон план графика проекта, можно создать корпоративный проект, который сразу будет подгружать готовый шаблон разработки ( Рисунок 4).
Рисунок 4. Создание план-графика проекта с использованием шаблона
Назначение на задачи в рамках пользовательских историй сначала производится с помощью универсальных ресурсов, замену которых на конкретных пользователей можно производить по специальному созданному корпоративному полю, определяющему квалификацию персонала ( Рисунок 5).
Рисунок 5 Создание команды проекта
Назначение удобно производить периодически на задачи ближайших пользовательских истории в представлении Team Planner (простите, не могу называть его правильно, правильно это «Визуальный ресурсный оптимизатор»), Рисунок 6.
Рисунок 6. Назначение исполнителей на задачи
Для корректной отчетности исполнителей по задачам в Agile проектах, если вы пользуетесь Project Server/Project Online, рекомендуется создать представление, чтобы они видели название проекта, суммарную задачу, код WBS задачи, Scrum-мастера, и отчитывались ежедневно ( Рисунок 7).
Рисунок 7. Представление для отчетности исполнителей в Project Server/Project Online
Для корректной отчетности исполнителей по задачам в Agile проектах, если у вас нет возможности использовать Project Server/Project Online по тем или иным причинам, можно использовать PlanBridge – дополнение к Microsoft Project Standard/Professional. Оно позволяет выгружать из Project в Microsoft Excel информацию о задачах и трудозатратах по исполнителям, и рассылать им по электронной почте для отчетности ( Рисунок 8).
Рисунок 8. Обменная книга PlanBridge для отчетности исполнителя по трудозатратам в Agile проектах
Comments
- Anonymous
January 01, 2003
- Какой-то странный Scrum описан. Спринты не состоят из итераций, спринты и итерации - это синонимы, одно и то же. Возможно, имели в виду, что если в конце каждого спринта (итерации) нет возможности предоставить клиенту релиз (инкремент, бизнес-ценность и т.п.), то этапность работ такая: релизные итерации (длительные), а они уже бьются на итерации.
2) Все-таки Microsoft Project (Server/Online) для Agile-проектов в чистом виде не годится: в Scrum работают доски задач, графики сгорания работ и прочие легковесные инструменты коллективной работы - хотя в связке с Microsoft Team Foundation Server может быть полезен в некоторых сценариях для менеджера проекта. Вот это стоило бы описать. ;-)