Agile - это гибкий подход, к управлению проектами, далее разберем подробно.
Данная методология зародилась в IT, однако сейчас широко применяется и в других отраслях. Что делает эту методологию очень востребованной. В связи с чем понимание данной темы является необходимым для руководителей не только в сфере IT.
Что такое Agile?
Прежде всего это ГИБКАЯ методология, в силу чего Agile представляет собой семейство методологий, которые вытекают из него.
Методология предназначена для проектов, в которых важна скорость разработки конечного продукта, а так же для проектов с быстроменяющимися вводными данными. Так каким же образом Agile упрощает работу с такими типами проектов.
Прежде всего, Agile - методология направленная на тесное сотрудничество внутри команды, а так же команды с заказчиком. Это увеличивает конкурентоспособность продукта, так как возможность добавления нового функционала, а так же внесения правок обеспечивается на всех этапах создания продукта, даже на самых поздних, благодаря тесному сотрудничеству.
Манифест
Agile-манифест (Agile Manifesto) — основной документ, в котором описаны ценности и принципы гибкого управления проектами.
Четыре ценности гибкого управления проектами
- Люди и взаимодействие важнее процессов и инструментов.
- Работающий продукт важнее исчерпывающей документации.
- Сотрудничество с заказчиком важнее согласования условий контракта.
- Готовность к изменениям важнее следования первоначальному плану.
Кроме главных ценностей, в Agile-манифесте перечислены 12 принципов Agile:
- Приоритет команды проекта — удовлетворение потребностей заказчика с помощью своевременной и регулярной поставки качественного продукта.
- Изменение требований к продукту приветствуется даже на поздних стадиях разработки. Agile-процессы позволяют обеспечить продукт конкурентными преимуществами.
- Промежуточный рабочий продукт нужно показывать заказчику как можно чаще — с периодичностью от пары недель до пары месяцев.
- Руководители и разработчики должны ежедневно работать вместе на протяжении всего проекта.
- Над проектом должны работать мотивированные специалисты. Нужно создать для них необходимые условия и обеспечить им поддержку.
- Личное общение — самый практичный и эффективный способ обмена информацией в команде.
- Работающий продукт — основной показатель прогресса.
- Процессы в Agile должны быть настроены так, чтобы проект развивался устойчиво. Заказчики, разработчики и пользователи должны быть готовы к тому, что изменения будут вноситься равномерно.
- Постоянное внимание к техническому совершенству продукта и качеству проектирования повышает гибкость проекта.
- Не стоит переусложнять проект — лишние процессы нужно свести к минимуму.
- Лучшие продукты рождаются у команд, которые умеют организовать себя самостоятельно.
- Команда должна постоянно искать способы работать эффективнее и корректировать свой стиль работы.
Перечисленные ценности и принципы — это чек-лист, по которому можно понять, насколько команда проекта соответствует или не соответствует Agile.
Главные виды Agile методологий: SCRUM и Kanban
Данные методологии являются наиболее популярными среди всех методологий Agile. Поэтому считаю необходимым осветить основные принципы этих методологий, если данная статься будет интересна, я напишу подробнее о них.
SCRUM
Методология заключается в том, чтобы разбить этап разработки на спринты, чаще всего по 2-4 недели и разрабатывать продукт поэтапно. В конце каждого спринта команда представляет готовую часть продукта, которой уже можно пользоваться. При этом в самом начале разработки нет четкого представления о том как будет выглядеть конечный продукт, требования могут сильно меняться в процессе разработки.
Каждый день происходит 15-ти минутный сбор всей команды, на которой каждый отвечает на 3 вопроса:
- Какие задачи выполнил с момента прошлой встречи.
- Какие задачи планирует сделать сегодня
- Трудности, с которыми он может столкнуться в процессе выполнения задачи
Kanban
Kanban. Эту методологию разработали в Японии и изначально использовали в производстве автомобилей. Слово kanban на японском означает «вывеска».
Методология предполагает под собой использование физической или онлайн доски, расчерченных на колонки. Классическая доска состоит из минимум трех колонок с названиями: "Сделать", "В работе", "Готово". Зачастую к ним могут добавляться колонки с промежуточными этапами выполнения задачи.
Данная методология выстроена по принципу конвейера, что обуспечивает фокусировку на выполнение задачи, а не на определение ее приоритезации и планирование.
Участник команды берет карточку задания в работу и перемещает ее по доске в зависимости от этапа выполнения, после завершения он берет в работу следующую задачу.
Где используют Agile?
Методологии Agile подходят для проектов высокой степени неопределённости. При работе над таким проектом непонятно, каким в итоге получится продукт, — не видна конечная цель проекта. Или, наоборот, цель есть, но не виден путь, который нужно пройти, чтобы этой цели достичь, — неясно, как разрабатывать продукт.
Вот примеры проектов, в которых гибкие методологии работают хорошо:
- разработка ПО и сайтов;
- создание новых продуктов;
- маркетинговые и рекламные кампании;
- творческие проекты — например, издательский бизнес.
Напротив, методологии Agile «вредны» в типовых проектах, где все процессы понятны и предсказуемы. Например, в строительстве зданий и сооружений или в других сложных инженерных проектах — когда есть измеримая цель, к которой нужно прийти, и понятен путь её достижения.