Манифест Agile
Манифест Agile был создан группой из 17 экспертов в области программного обеспечения. Он формулирует четыре ключевые ценности, которые важнее традиционных подходов к управлению проектами.
- Люди и взаимодействие важнее процессов и инструментов. Совместная работа разработчиков и заказчиков эффективнее, чем их изолированная деятельность.
- Работающий продукт важнее исчерпывающей документации. Документация имеет ценность, но рабочий продукт всегда приоритетнее.
- Сотрудничество с заказчиком важнее согласования условий контракта. Важно выстраивать позитивные отношения и быть заинтересованным в желаниях заказчика, который является центром проекта.
- Готовность к изменениям важнее следования первоначальному плану. Программное обеспечение постоянно меняется, и продукт должен адаптироваться под актуальные потребности.
Ценность первых пунктов выше, но это не означает, что нужно полностью игнорировать процессы, документацию, контракты или планы.
Манифест также дополнен 12 вспомогательными принципами. На его основе были разработаны различные гибкие методологии и практики, такие как Scrum, Lean и Kanban.
Scrum: основы методологии
Scrum — это легкая для понимания, но иногда сложная во внедрении гибкая методология. Она превращает ценности и принципы Agile в конкретные руководящие практики для разработки продукта и использует итеративный и инкрементальный подход.
Scrum основан на трёх столпах:
- Прозрачность: Каждая часть проекта видна как команде, так и внешним участникам.
- Инспекция: Частые, но не мешающие работе, проверки продукта и процессов для выявления отклонений.
- Адаптация: Команда должна оперативно подстраиваться, если обнаружено отклонение от цели.
Для реализации инспекции и адаптации в Scrum определены четыре ключевых события: Планирование спринта, Ежедневный Scrum, Обзор спринта и Ретроспектива спринта.
Роли и события в Scrum
Scrum Master отвечает за коучинг команды, устранение препятствий и содействие Scrum-событиям. Команда разработчиков самоорганизуется для выполнения работы.
Центральным событием является Спринт — ограниченная по времени фаза разработки (обычно 1-4 недели), по итогам которой предоставляется рабочий прототип с новыми функциями.
Правила работы со спринтами:
- Длительность спринта фиксируется в начале проекта и не меняется.
- В конце каждого спринта заказчику предоставляется рабочий прототип.
- В течение спринта в его цели нельзя вносить изменения; все новые предложения добавляются в общий бэклог и рассматриваются при планировании следующего спринта.
Рабочий процесс Scrum
Процесс представляет собой цикл, который начинается с Бэклога продукта — общего списка всех задач и пожеланий.
- Планирование спринта: В начале спринта из общего бэклога выбирается набор задач, которые команда обязуется выполнить. Они помещаются в Бэклог спринта.
- Спринт: В течение итерации Scrum Master проводит короткие ежедневные встречи, где команда координирует работу.
- Готовый прототип: К концу спринта должен быть готов рабочий прототип со всеми запланированными обновлениями.
- Обзор спринта: Прототип демонстрируется заказчику для сбора обратной связи. Новые задачи из фидбэка добавляются в общий бэклог продукта.
- Ретроспектива: Команда обсуждает, как улучшить процессы в будущих спринтах.
После этого цикл повторяется: начинается планирование следующего спринта.