Реализация
Планирование |
Реализация |
Планирование |
Реализация |
||||
|
|
|
|
||||
|
|
|
|
|
|
|
|
1 |
|
|
|
2 |
|
|
3 |
Спринт |
|
|
Спринт |
|
|
Спринт |
|
|
|
|
|
|
|
|
|
Планирование
Требования |
|
|
Поставка |
|
|
|
Поставка |
Поставка |
Требования |
|
Требования |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Риск
Рисунок 3 – Схема работы по Agile
Гибкое управление – это комплексный процесс разработки продукта, требующий использования итераций (повторения определенных циклов работы), с учетом постоянно изменяющихся требований, которые должны быть реализованы за счет непрерывного взаимодействия с заинтересованными сторонами (клиентами, разработчиками, пользователями и другими стейкхолдерами).
Вобщих чертах суть гибкой методологии проектного управления заключается в важности внесения своевременных изменений в параметры проекта и в управление им по мере уточнений и конкретизаций требований заказчика.
Втеории проектного менеджмента различают несколько типов жизненного цикла проекта [15] (табл. 1).
165
Таблица 1 – Характеристики типов жизненного цикла проекта.
Жизненный |
Характеристики |
|
|
|
|
|
цикл |
|
|
|
|
|
|
Требования |
Операции |
Поставка |
Цель |
|
||
|
|
|
|
|
|
|
Предиктивный |
Фиксированные |
Выполняются |
Разовая поставка |
Управление |
|
|
(Waterfall) |
|
однократно за |
|
стоимостью |
|
|
|
|
весь проект |
|
|
|
|
|
|
|
|
|
|
|
Итеративный |
Динамичные |
Повторяются |
Разовая поставка |
Правильность |
|
|
|
|
до |
полного |
|
решения |
|
|
|
уточнения |
|
|
|
|
|
|
|
|
|
|
|
Инкрементный |
Динамичные |
Производятся |
Частые поставки |
Скорость |
|
|
|
|
однократно для |
частями |
|
|
|
|
|
каждого |
меньшего |
|
|
|
|
|
инкремента |
размера |
|
|
|
|
|
|
|
|
|
|
Гибкий |
Динамичные |
Повторяются |
Частые поставки |
Ценность |
для |
|
(Agile) |
|
до |
полного |
небольшими |
заказчика за |
счет |
|
|
уточнения |
частями |
частых поставок и |
||
|
|
|
|
|
обратной связи |
|
|
|
|
|
|
|
|
Предиктивные жизненные циклы используют преимущества того, что известно и прошло проверку практикой. Такое снижение неопределенности и сложности позволяет командам разбить работу на взаимосвязанные группы работ.
Итеративные жизненные циклы позволяют использовать обратную связь в отношении частично завершенной работы с целью ее доработки и уточнения.
Инкрементные жизненные циклы дают конечные поставляемые результаты, которые заказчик может немедленно использовать.
Жизненные циклы Agile используют преимущества как итеративных, так инкрементных циклов. При использовании подходов Agile продукт производится итерациями в виде готовых поставляемых результатов. Команда получает обратную связь уже на раннем этапе и обеспечивает заказчику наглядность, уверенность и контроль в отношении продукта [15].
Одним из самых распространенных методов семейства Agile является метод Scrum – фреймворк процесса с участием одной команды, используемый
166
для управления разработкой продукта [10,26,27]. События и артефакты Scrum представлены в табл.2 [14], а описание основных элементов этого инструмента в табл.3 [5,6].
Таблица 2 - События и артефакты Scrum
События |
Артефакты |
|
|
Планирование спринта (Sprint Planning) |
Бэклог продукта (Product Backlog) |
Демонстрация MVP (Sprint Review) |
Бэклог спринта (Sprint Backlog) |
Ежедневный скрам (Daily Scrum) |
Инкременты (Build) |
Анализ спринта (Sprint Analysis) |
Стори поинт (Story Point) |
Ретроспектива спринта (Sprint Retrospective) |
Минимально жизнеспособный продукт (MVP) |
|
|
Таблица 3 - Основные элементы методологии Scrum
Элемент Scrum |
Описание |
|
|
Пользовательские |
Составляется набор «историй» - вариантов использования готового |
истории и бэклог |
продукта. Истории дробятся на задачи для реализации и помещаются |
|
в отдельный список – бэклог продукта. |
|
|
Планирование |
Команда выбирает задачи из бэклога, которые она может осуществить |
итерации |
за один спринт (2-4 недели). |
|
|
Scrum-доска |
Доска с графами «Запланировано на спринт», «В Работе», |
|
«Завершено» (и дополнительными), куда в открытом доступе |
|
помещаются все задачи команды |
|
|
Ежедневный |
Каждый день команда собирается на 10 минут возле доски задач, |
standup |
обсуждая выполненные и запланированные задачи, а также делясь |
|
возникшими проблемами. |
|
|
Ретроспективы |
Собрания команды, где обсуждается ход выполненных работ за |
|
несколько прошедших спринтов |
|
|
Демонстрация MVP |
Демонстрация полностью готовой к использованию функции |
|
продукта в конце каждого спринта, получение обратной связи |
|
|
Выделенный |
В команде добавляются роли scrum-мастера – следящего за |
владелец продукта |
методологией и владельца продукта – отвечающего за донесение до |
и scrum-мастер |
команды мнения стейкхолдеров |
|
|
Диаграмма |
В общем доступе имеется график, где отображается отношение |
выгорания |
выполненных задач по спринту к оставшимся |
|
|
167
В Scrum минимальная итерация, такт работы команды называется «спринт» (sprint). Ее длительность жестко фиксирована и определяется конкретными условиями и требованиями к процессам разработки создаваемого продукта. Оптимальной длительностью спринта считается интервал 2 недели, максимально возможной - 6 недель. Результатом спринта является инкремент готового продукта (build), который можно передать владельцу продукта (Product Owner, PO). Именно в реализации готового инкремента в короткие сроки и с минимальными трудозатратами, который заказчик может использовать и получать от этого определенную бизнесценность, заключается преимущество и уникальность Scrum в сравнении с традиционными методами управления.
Инкремент: буквально приращение , добавка , часть (или версия) создаваемого продукта потенциально готовая к использованию и увеличивающая ценность для конечных пользователей/потребителей.
Бэклог продукта (Product Backlog, PB) - это упорядоченный список задач, которые должны быть реализованы в конечном продукте.
Если бэклог продукта содержит полный список существующих задач, связанных с разработкой продукта, то бэклог спринта (Sprint Backlog SB) - это набор элементов Product Backlog, выбранных для выполнения в текущем спринте. SB - это прогноз и обязательства Scrum-команды относительно функциональности, которая станет частью разрабатываемого инкремента за время спринта.
В качестве единицы измерения трудоемкости объемы работы в спринте рекомендуется использовать не трудозатраты, а условные единицы сторипоинты (Story Point).
Минимально жизнеспособный продукт (Minimum Viable Product, MVP) инкремент продукта с минимально необходимым набором характеристик, который может быть использован пользователями для удовлетворения той или иной потребности, а также достаточный для сбора обратной связи от пользователя для последующих улучшений этого продукта. В качестве MVP не может рассматриваться, в частности: не работающая версия продукта, пусть и
168
почти готовая ; какие-либо артефакты проектирования продукта, но не сам продукт (например, архитектура, дизайн-решение, технический проект, технологическая схема и т.д.).
Scrum использует итеративный и инкрементальный подход, чтобы улучшать прогнозируемость и управлять рисками. Итеративность – регулярное повторение полного цикла работы над продуктом с непрерывным анализом результатов предыдущего этапа и корректировкой требований и процесса; инкрементальность – приращение результатов предыдущего этапа.
Таким образом, «гибкий» подход к управлению проектами позволяет оставаться лояльным к изменениям, максимально упростить коммуникацию внутри команды, а также интегрировать заказчика в процесс работы над проектом, чтобы максимально достигать бизнес-ценностей.
Несмотря на обозначенную специфику, Agile становится частью общепринятых стандартов проектного менеджмента. Традиционные школы проектного менеджмента признают популярность и эффективность гибких методов проектного управления и включают их в свои стандарты, предлагая компаниям самостоятельно подобрать инструменты для решения своих задач. В 2015 году в приложение к основному стандарту, британский институт AXELOS выпускает «PRINCE2 Agile» (AXELOS, 2015) [21]. Новый стандарт, объединяющий философию и инструменты традиционного и гибкого подходов, позволяет преодолеть определённую узость и бюрократизм PRINCE2 с одной стороны, и компенсировать недостаточность формального планирования и контроля у Agile — с другой. Если команда готова использовать методы и процессы PRINCE2 для планирования и контроля, а в стадии реализации проекта работа планируется и организуется по Agile итеративно – в формате 2-4 недельных спринтов или. При этом обеспечивается более высокая скорость разработки продукта и передача полезных результатов заказчику на выходе из каждого спринта. На основе нового стандарта традиционный подход PRINCE2 позволяет получить одобрение руководства или спонсоров на реализацию проекта по методологии Agile, что ранее было невозможно. А Agile, в свою
169