Partilhar via


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
  1. Какой-то странный Scrum описан. Спринты не состоят из итераций, спринты и итерации - это синонимы, одно и то же. Возможно, имели в виду, что если в конце каждого спринта (итерации) нет возможности предоставить клиенту релиз (инкремент, бизнес-ценность и т.п.), то этапность работ такая: релизные итерации (длительные), а они уже бьются на итерации.
    2) Все-таки Microsoft Project (Server/Online) для Agile-проектов в чистом виде не годится: в Scrum работают доски задач, графики сгорания работ и прочие легковесные инструменты коллективной работы - хотя в связке с Microsoft Team Foundation Server может быть полезен в некоторых сценариях для менеджера проекта. Вот это стоило бы описать. ;-)