Контакты
Время работы:
с 10:00 до 19:00
E-mail:
Заказать звонок
Оставить заявку
logo
Что такое Agile простыми словами

Что такое Agile простыми словами

6 минут на чтение
58

Быть руководителем крупной проектной работы или даже просто принимать участие в подобных проектах очень сложно. Какими бы опытными и подготовленными не были участники данного проекта, сделать так, чтобы все работали одинаково продуктивно, под силу далеко не всем. Проблем может добавить и сам проект, со своими целями и задачами, строгими дедлайнами, добавлениями новых условий и требований. Чтобы научиться спокойно работать с такими сложными проектами, нужно сперва научиться определенной гибкости. К каждому отдельному проекту нужен свой подход.

Одной из наиболее известных гибких систем по управлению проектами является методология Agile. Несмотря на то, что основополагающий документ методики вышел более 20 лет назад, далеко не все средние и крупные компании успели ее опробовать на деле. Существует достаточно литературы и других материалов про особенности внедрения методики Agile. Но некоторые принципы этой методики требуют дополнительного пояснения.

Оглавление

1. Что такое методика Agile?

2. Краткая история возникновения Agile

3. Базовые принципы методики Agile

4. Суть итеративно-инкрементального подхода

5. Примеры применения Agile на практике

6. Какие инструменты есть у Agile?

7. Преимущества и недостатки Agile

8. Специфика внедрения Agile

9. Заключение

Что такое методика Agile?

Если перевести название методики на русский язык, то окажется, что это прилагательное. Дословный перевод – «шустрый» или «маневренный». Отсюда и смысл методики. Она предполагает оперативную смену своего движения без потери скорости или эффективности. На основе этого манифеста, который был разработан трудами различных практиков в течение многих лет, появились другие известные подходы. Это тот же Scrum, Feature Driven Development, eXtreme Programming. Все перечисленные подходы были сформулированы авторами манифеста Agile.

Речь в данном случае идет не о строгом своде правил или установленной методологии. Скорее это группа или семейство различных эффективных подходов, позволяющих воплотить идеи и ценности Agile в реальности. Основные идеи этой системы зародились в среде программистов, когда стало ясно, что старые методы ведения рабочего процессе уже не актуальны или обладают низкой эффективностью. Вместо традиционных правил, не соответствующих духу времени, были выведены базовые идеи Agile:

  • приоритет между методами и инструментами имеет коммуникация внутри команды проекта;

  • готовность продукта и уровень его отладки важнее, чем любая документация;

  • на первом месте стоит налаженная и позитивная связь с заказчиком проекта. Раньше на первом месте всегда стояло обсуждение пунктов договора;

  • важнее придерживаться гибкости решения задач, чем просто следовать исходному плану.

Краткая история возникновения Agile

Первые попытки придумать оптимальную систему управления проектами появились с первыми серьезными разработками ПО. Это 70-е годы прошлого века. Автором первого подобного документа под названием «Управление развитием крупных программных систем» является американский ученый Уинстон Ройс. Суть документа в том, что разработка ПО не может иметь строго регулируемые правила, как это есть на том же автомобильном производстве. 

В частности, принцип очередности этапов при разработке ПО может быть заменен фазовым подходом. При таком подходе сначала собираются основные требования проекта, далее идет создание архитектуры, дизайна, запись кода и прочее.

В 90-х годах, на основе указанного документа, стали активно появляться различные гибкие методы разработки ПО. Это метод разработки приложений RAD, платформа Scrum, методология Crystal Clear. Все эти методы разработки ПО стали называться гибкими. В 2001 году группа разработчиков по итогу обсуждения вывела и опубликовала «Манифест о гибкой разработке программного обеспечения Agile».

Базовые принципы методики Agile

Установленные идеи методологии Agile стали отправной точкой для разработки основных принципов этой системы. Всего есть 12 базовых принципов:

  1. Принципы говорят о том, что нужно поставлять своим клиентам ПО регулярно, вовремя и через одинаковые временные промежутки;

  2. Делать поставки программного продукта нужно как можно чаще;

  3. Требования к конечному продукту должны постоянно меняться и адаптироваться, в зависимости от выявленных обстоятельств;

  4. Нужна поддержка сотрудничества между заказчиком и разработчиками на время всего цикла разработки продукта;

  5. Также нужно держать связь и со всеми разработчиками, которые трудятся в команде;

  6. Прямой контакт с разработчиками и их дополнительное мотивирование должно быть в приоритете.

  7. Скорость работы команды разработчиков должна быть такой, чтобы при ней поддерживался непрерывный темп;

  8. Мерилом прогресса работы компании может быть только качество рабочего ПО;

  9. Рабочий процесс не должен быть перегружен сторонними процессами – он обязан быть максимально простым. Таким же простым и понятным должен быть готовый программный продукт;

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

  11. На дизайнерские и технические детали программного продукта нужно уделять особое внимание;

  12.  Важно постоянно подстраиваться под внешние факторы и меняющуюся среду.

Принципов Agile больше, но они появились намного позднее, чем четыре ранее упомянутые ценности Agile. Но для понимания основ методики следует подробнее внедриться в суть прописанных ценностей. Первая ценность говорит о том, что установленные корпоративные правила и четко выстроенная иерархия очень редко способствует эффективной разработке новых продуктов. Характер взаимодействия участников проекта должен определить формат рабочих процессов и выбирать подходящие для них инструменты. Чтобы гибкие фреймворки работали, их нужно неукоснительно соблюдать.

Приоритет работающего продукта перед документацией не исключает использование документов в принципе. Просто ее должно быть меньше. По-прежнему важной остается документация, которая затрагивает именно разработку продукта. Что касается приоритета сотрудничества с заказчиком перед согласованием условий контракта, то это действия с прицелом на будущее. Можно заключить договор с определенными условиями, после чего не найти общий язык с заказчиком и отсудить деньги. Но это временная выгода, так как на споры будут потрачены и силы, и время, а с этим заказчиком отношения будут испорчены окончательно. Лучше постоянно с ним сотрудничать и вести диалог.

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

Суть итеративно-инкрементального подхода

Данный метод является основополагающей базой для создания различных гибких подходов. Продукт лучше не делать целиком, а разбить его на отдельные мелкие партии или итерации. При подобной разбивке продукта, можно презентовать заказчику результаты своего труда намного раньше. Благодаря этому, можно получать актуальную обратную связь от тех же заказчиков, принимать правки к проекту, понять, идет ли команда в правильном направлении или нет.

Для воплощения такого подхода в жизнь, необходимо разбить или декомпозировать продукт на несколько отдельных ценных элементов. Список таких элементов, по факту, будет являться листом пожеланий к функциональности готового продукта.

Основные отличия Agile от Scrum

Методика Скрам, чей термин переводится, как «схватка», направлена на то, чтобы создавать, поставлять и поддерживать наиболее сложные продукты. Методика представляет собой лишь основу для процесса, которая может быть дополнена или изменена разными эффективными практиками. Данный фреймоворк является компактным, но в то же время масштабируемым и адаптируемым. В отличие от методики Agile, которая заточена на эффективную реализацию проектов. Скрам применяется для создания продуктов. Тут и кроется главное отличие.

Во-первых, проекты всегда имеют понятный и установленный жизненный цикл, тогда как продукты не имеют конечного срока, и могут поддерживаться десятки лет. Проекты — это больше про соблюдение сроков, работа в рамках установленного бюджета и содержания. При создании продукта, главной целью является поставка ценности клиенту и потенциальная финансовая выгода. Скрам лучше всего показывает себя тогда, когда нужно создать продукт. Тут есть следующие факторы:

  • Неясность конечной цели и отсутствие установленных способов её достижения;

  • Постоянное изменение внешних факторов, будь то требования, рыночные условия, технологии и прочее;

  • Другие неизвестные факторы, такие как взаимосвязи процессов в крупной организации.

Сам продукт создается, как и при методике Agile, отдельными итерациями, но тут они называются спринтами. Сами спринты длятся до четырех недель, но это время превышать нельзя. В рамках одного спринта нужно определить объемы работы, ежедневно встречаться с другими членами команды для подведения планов и корректировки работы, далее демонстрируются полученные результаты. Эти спринты обсуждаются для понимания дальнейших действий. Кроме владельца продукта и команды, важную роль в процессе имеет так называемый скрам-мастер. Это координатор процесса, наставник, ментор.

Примеры применения Agile на практике

Чаще всего подобную методику используют различные IT-компании, так как гибкий подход хорошо себя проявляет при разработке программного продукта. Характерным примером компании, которая успешно применила методику, но не относится к IT-технологиям, является «Северсталь». Разработка новой упаковочной ленты, стальной черепицы, марок стали выполнялась Agile-командами. В процессе вовлечены сотрудники производства, сотрудники поддержки, специалист по продажам и маркетолог.

Продукт традиционно создается итерациями, а параллельно с этим выполняются различные эксперименты с прототипами, изучение рынка, контакт с клиентами и прочее. Активное масштабирование продукта выполняется только тогда, когда будет очевидно, что продукт соответствует заявленным требованиям.

Читайте также
Люди Z: как найти подход к центениалам

Какие инструменты есть у Agile?

Под инструментами нужно в первую очередь понимать не различные социальные технологии, такие как встречи команды, активная коммуникация и прочее, но и предметы визуализации. В процессе проведения различных встреч, переговоров, мозговых штурмов и других подобных мероприятий, нужно умело использовать доски со стикерами. При помощи такой канбан-доски можно быстро организовать рабочий процесс и распределить задачи между сотрудниками без участия координатора или менеджера.

Кроме визуализации рабочих задач, можно сделать доски с разными метриками, которые позволят понимать, на каком этапе находится компания и насколько сильно они продвинулись по своей задаче. Это хороший мотиватор. Несмотря на то, что в данный момент существует множество информационных средств и сервисов, они имеют меньший практический эффект, чем традиционные доски со стикерами. Лучше начинать работу с физическими инструментам, и постепенно переходить к информационным технологиям, таким, как групповые чаты в мессенджерах, почта и прочее.

Преимущества и недостатки Agile

Однозначным плюсом такого подхода является возможность создания качественного продукта без четких правил и условий. Гибкие подходы лучше всего проявляют себя именно при неопределенности. Исследования в этой области демонстрируют тот факт, что методика Agile сильно увеличивает эффективность разработок продукта без строгих рамок.

Но так как в рамках гибкой системы много времени приходится тратить на тестирование и переработку, иногда можно обнаружить, что компания делала совсем не то, что нужно. Это и временные и денежные потери. Застраховаться от подобных издержек или минимизировать их негативное воздействие почти невозможно. Еще недостатком подобной методики является то, что сотрудникам нужно обеспечить все условия для качественного общения между собой. Удаленная работа может практиковаться, но лучше всего нанимать просторный офис с комнатой для переговоров.

Специфика внедрения Agile

Перед тем, как внедрять новую систему управления, нужно выполнить определенную подготовку. Коллектив нужно адаптировать к новым для них условиям. Чтобы методика гибкого подхода действовала, необходимо создать условия, чтобы заказчик работал сообща с менеджером и членами команды. Постоянная коммуникация очень важна. Следует создать условия для визуального контроля прогресса, а именно установка досок с цветными карточками, где нужно помечать список задач, степень готовности проекта и прочее.

Сам проект нужно поделить на отдельные циклы. Менеджер проекта не должен раздавать задачи сотрудникам – от него требуется только контролировать процесс исполнения условий сотрудничества. Сам продукт важно постоянно корректировать.

Понять, готова ли команда к Agile, можно по следующим признакам:

  • В команде есть 10 человек, она ознакомлена с целью проекта и сроками реализации;

  • Работа позволяет разделить ее на несколько этапов;

  • Проведен сбор данных, понятны показатели оценки результатов работы, изучены потребности целевой аудитории;

  • Заказчик будет принимать участие в процессе создания продукта.

Для внедрения Agile нужно понять, кто и зачем будет использовать готовый продукт. Для этого анализируется целевая аудитория. Тогда станет понятной идея проекта, распределение ресурсов и расстановка временных дедлайнов. Проект поделится на несколько этапов.

После сбора команды и распределения задач между ними, можно подобрать методики создания отчетов и анализа полученных результатов. На первых этапах нужно будет обучать сотрудников новым для них принципам. Тест-драйв на первых этапах лучше проводить вместе со специалистом. Ключевым этапом внедрения методики является запуск спринтов, после окончания которых нужно делать оценку проделанной работы и корректировать свои дальнейшие действия. Результатом всего проекта считается выпуск конечного продукта.

Заключение

Изучив теоретический материал, можно быть подкованным во всех нюансах гибкой системы Agile, знать все принципы и ценности. Но более важно уметь внедрить новые методики для уже устоявшегося коллектива. Это вызов не только для самих сотрудников, но и для руководителя.  Даже внедрение Agile не будет являться стопроцентной гарантией успеха. Но на его основе можно найти правильный путь компании, постепенно перейдя на более подходящую для нее гибкую методику.

Популярность Agile и других методов управления на ее основе связана со стремительным развитием цифровизации и различных информационных технологий. Неопределенность многих сфер и отраслей заставляет пересматривать привычные подходы к менеджменту компаний. В тренде сейчас универсальность, адаптируемость и возможность быстро перестроиться под текущие условия. Гибкая методология может стать ключом к успеху компании.

Хотите получать статьи и новости в удобном формате? Подписывайтесь на наш Телеграм-канал


Материалы по теме
Как прорваться к умам целевой аудитории?
PalmFace Awards (октябрь, 2019)
Быть руководителем крупной проектной работы или даже просто принимать участие в подобных проектах очень сложно. Какими бы опытными и подготовленн...