Projecto

Из каких шагов состоит гибкий цикл разработки Agile

По какой-то причине Agile (Аджайл) многие разработчики воспринимают как самостоятельную методологию (фреймворк) работы над проектами. В реальности Agile – это скорее философия, общий подход, который объединяет целую группу гибких методологий (Scrum, Lean, Kanban и т.п.).

Вообще, методологии могут быть и не гибкими. Например, Waterfall. Лучшие практики для управления проектами можно посмотреть в нашем списке Топ-10.

Ниже остановимся на отдельном вопросе – из каких шагов будет состоять цикл разработки проекта по Agile-методикам.

О принципах Agile

Как сказано выше, аджайл – это не методика, это парадигма или общая модель. Поэтому у неё нет конкретных шагов или подробной документации. Это свод принципов, их всего 12, они были утверждены в 2001 году группой независимых разработчиков.

Официальную версию принципов на русском языке можно увидеть на сайте agilemanifesto.org.

  1. Высший приоритет отдаётся потребностям заказчика.
  2. Требования к проекту могут меняться на любом этапе, даже на поздних стадиях разработки.
  3. Цикл выпусков проекта должен быть частым (от 2 недель до 2 месяцев).
  4. Представитель бизнеса (заказчика) должен работать в команде.
  5. Над проектом должны работать только мотивированные профессионалы.
  6. Лучший способ обмена информацией в команде – непосредственное общение.
  7. Главный показатель прогресса – работающий проект (продукт).
  8. Ритм разработки может быть бесконечным, и заказчики/пользователи должны иметь возможность поддерживать такой ритм.
  9. Постоянное внимание к техническому совершенству.
  10. Для минимизации расходов и работ все участники проекта должны стремиться к простоте.
  11. Команды должны быть самоорганизующимися (для достижения лучших архитектурных решений).
  12. Работу нужно постоянно анализировать и оптимизировать.

Ключевые идеи манифеста Agile:

Если взглянуть на эти принципы со стороны, то легко проследить наличие ключевых функций менеджмента: планирование, налаживание коммуникаций, контроль выполнения проекта (в случае с Agile-методиками он получается сквозным и непрерывным за счёт наличия представителя заказчика в команде), анализ деятельности и оптимизация процессов.

Многие из этих принципов могут трактоваться по-разному, с разными техническими деталями и особенностями. Наверное, поэтому так много Agile-методик и фреймворков.

Методологии Agile (гибкие методологии управления проектами)

Рассмотрим привязку к циклам в наиболее востребованных Agile-методиках.

Канбан и циклы разработки проектов

Здесь придерживаются следующих принципов: нужно поощрять лидерство; все участники соглашаются с тем, что проект будет постоянно эволюционировать и совершенствоваться; начинать новые циклы нужно с того, что имеется в настоящее время (как вариант последовательного развития проекта); нужно уважать процессы/роли/обязанности.

Многим канбан-подход нравится из-за простой и понятной визуализации задач, это так называемая канбан-доска, которая делится по колонкам-состояниям. Задачи последовательно переходят из одного состояния в другое, пока не будут завершены.

Технические особенности, относящиеся к циклам разработки:

Несмотря на отсутствие явных требований к цикличности совещаний и других внутренних мероприятий, у многих канбан-команд вырабатываются свои частные практики:

Scrum и циклы разработки

Скрам придерживается твёрдых циклов в работе над проектом (здесь они называются спринты). Хотя это тоже гибкая методология, правда, с детально прописанной документацией и принципами. Обратите внимание, если вы используете в работе аналогичный подход, но что-то в нём поменяли под свои нужды, его уже нельзя назвать Scrum, таковы правила разработчиков стандарта.

Как и в случае с канбан-подходом, у Scrum контроль осуществляется непрерывно, за счёт совместной работы и обсуждений с представителями заказчика.

Бэклог проекта может быть общим (список пожеланий/задач клиента) и только для одного спринта.

Что касается технических нюансов циклов разработки по Scrum:

Теперь поговорим о шагах разработки.

Гибкие (agile) циклы и шаги разработки

Конкретных шагов у гибких циклов разработки проектов нет и быть не может. Здесь используются только такое понятие, как «события». Например, событие планирования, которое предшествует стадии разработки внутри спринта при Scrum-подходе. Ежедневные собрания (митинги) – это тоже события.

В SCRUM порядок событий строго определен. Они должны происходить в следующей последовательности (в рамках одного спринта):

  1. Планирование спринта (Sprint Planning).
  2. Daily Scrum – ежедневная 15-минутная встреча перед началом работы над задачами из бэклога спринта.
  3. Спринт ревью (Sprint Review) – предпоследнее событие спринта, нужно для инспекции результата.
  4. Ретроспектива спринта (Sprint Retrospective) – событие анализа, последнее событие «забега».

В канбан-подходе в качестве событий используются встречи. Но суть от этого не меняется. В agile-методиках нет конкретных шагов разработки.

Тем не менее, никто не мешает вам совместить модель последовательной разработки с любым agile-подходом.

Как это может выглядеть.

Exit mobile version