Что это? Методология Agile представляет собой семейство гибких подходов управления проектами. Наиболее известные – Scrum и Kanban Противоположность Agile – методика Waterfall, где выполнение задач происходит поэтапно.
Где применяется? Изначально предполагалось применение принципов Agile в IT-сфере при разработке нового ПО. Так и было, но со временем практику гибкого управления проектами переняли многие другие сферы.
Появление методологии Agile
Каскадная модель планирования (Waterfall model или «Водопад») – самая распространённая модель управления проектами в наши дни. Метод основан на разработках, которые были созданы и описаны в конце пятидесятых годов в США. Waterfall model опирается на диаграмму Ганта, сетевую диаграмму, методы критического пути и методы PERT. Все они не теряют своей актуальности и даже становятся более популярны, поскольку программное обеспечение продолжает развиваться.
Для строительных и больших инженерных проектов, в которых результаты чётко определены заранее и не меняются, каскадные методы остаются наиболее эффективными по сей день.
Новые подходы (более «гибкие») оптимальны для заказчиков, чьи проекты не подразумевают конкретных прописанных заранее результатов. Бывает, что требования меняются в ходе работы над проектом или у заказчика нет видения конечных результатов. В этом случае реализовать проект с помощью каскадной модели становится затруднительно.
В 2001 г. был подписан Agile Manifesto – «Манифест гибкой методологии разработки программного обеспечения». Были выработаны общие принципы, терминология, возможности продвижения новой сформированной концепции.
Простыми словами методология Аgile – это общие принципы, которые объединяют новые методы разработки проектов и управления ими. Это относится к бережливому производству, SCRUM, Kanban и некоторым другим подходам.
То есть Agile не является самостоятельной методикой: это общие принципы, на которые опираются разработчики новых методов и те, кто пользуется уже существующими. Виды Аgile методологий мы рассмотрим далее.
Манифест содержит информацию о том, что Аgile актуален для разработчиков программного обеспечения, однако гибкие методы применяются к решению самых разнообразных задач. Они подходят для всех сфер с высокой неопределённостью результатов, критичными сроками и стоимостью разработок.
Основные отличия методологий Agile и Waterfall
Итак, Agile — это свод методологий, объединённых общими принципами, однако каждая методология из этого свода может отличаться своими инструментами и подходами к работе. Поэтому сравнение Agile в целом с какой-либо конкретной методологией будет не совсем корректным.
Поэтому будем сравнивать не основные инструменты, а основополагающие принципы.
В открытом доступе до 04 июня
Полезные материалы для руководителей от Егора Соколова
Егор Соколов
Руководитель направления «Онлайн-образование» Деловой Среды
Команда Деловой Среды подготовила материалы, которые содержат только самые эффективные методы и способы увеличения продаж от действующих предпринимателей. 87% наших партнеров с помощью данных материалов кратно увеличили продажи в своей компании! Мы стараемся как можно большему количеству предпринимателей помочь реализовать мечту об успешном бизнесе, поэтому делимся этой подборкой из нашей закрытой группы бесплатно. Скачивайте и используйте уже сегодня:
Чек-лист. 21 пункт проверки финансового состояния бизнеса.
Чек-лист: как делегировать задачи, чтобы их выполняли с первого раза.
Как увидеть полную картину бизнеса в цифрах.
Как найти точки роста бизнеса.
Agile и классические строгие методологии вроде Waterfall имеют ряд отличий. Итак, в чём особенность Agile?
- Цели работы могут меняться в процессе, и это естественно. Этому не стоит противостоять: в условиях изменчивого мира несколько месяцев разработки – это очень много. За это время могут измениться и видение клиента, и методы работы.
- Аналитика и планирования не должны занимать много времени: это бесполезно, ведь их необходимо будет проводить снова и снова. Гораздо эффективнее заниматься техническим совершенствованием продукта.
- Каждый небольшой цикл работы должен завершаться созданием готового продукта (хоть и с ограниченным набором функций).
- На каждом этапе необходимо пересматривать требования к продукту: все изменения учитываются и добавляются к следующему рабочему циклу.
- Необходимо обеспечивать гибкость сроков, оставляя дополнительное время для непредвиденных задержек и изменений.
- Руководитель проекта принимает активное участие в процессе всего цикла работы: корректирует задачи, сопровождает рабочие процессы в рамках методологии Аgile. В таком формате недостаточно предоставить техническое задание в начале и прийти с ревизией в конце.
Сферы применения методологии Agile
Agile первоначально был создан как инструмент для организации разработки интерфейсов, ПО и игр. В этой сфере он действительно используется очень активно: его предпочитают Microsoft, Adobe, Netflix, Google, Ericsson, Spotify, Dell и прочие IT-компании (и гиганты индустрии, и мелкие стартапы).
Однако постепенно популярность Agile стала распространяться и на другие сферы бизнеса. Отдельными принципами этого семейства сейчас пользуются практически во всех сферах, а многие компании всю свою работу выстраивают, используя гибкую проектную методологию Аgile.
Итак, рассмотрим сферы, для которых успешно применим этот подход сейчас.
- Особенности методологии Аgile делают её применимой к менеджменту, маркетингу, финансовым отраслям, управлению персоналом. Все эти сферы используют её, чтобы обеспечить сверхбыструю реализацию проектов и качественный результат.
- Agile подходит всем предприятиям, ориентированным на увеличение дохода и расширение влияния на рынке.
- Agile универсален: эта методология одинаково подходит и небольшим компаниям, и крупным предприятиям, предпочитающим гибкие управленческие методы.
- Для небольших предприятий Agile незаменимый способ организовать процессы. Заведения общепита, стоматологические клиники, косметологические кабинеты, автосалоны и прочие представители малого бизнеса выбирают эту методологию. Agile лучший выбор для «тюнинга» бизнес-процессов: с его помощью можно организовать внешнеэкономическую деятельность и построить системы продаж.
- Система помогает проживать неизбежные кризисные периоды и неопределенные ситуации. Такие этапы не должны препятствовать получению дохода, защите своего бизнеса, грамотному применению имеющихся ресурсов и возможностей.
Преимущества и недостатки методологии Agile
Как и у любой методологии, у Agile есть свои плюсы и минусы. Начнём с преимуществ гибкой методологии разработки Аgile.
- Прозрачность и понятность для клиентов на каждом этапе.
- Обеспечивает быстрый старт.
- Возможность получения обратной связи и быстрой корректировки курса на основе полученной оценки или информации.
- Первична выгода для бизнеса клиента.
- Свобода действий для команды, поддержка эффективного творческого процесса.
- Клиента вовлечён в проект, и это обеспечивает сфокусированность разработок.
- Сотрудничество и взаимодействие между всеми участниками команды.
- Отлично подходит проектам, в которых работа приносит сервис-ориентированные и нефизические результаты (это может относиться к написанию кода, копирайтингу или проектированию).
Разумеется, гибкая методология проектного управления имеет и свои минусы. Какие же?
Выбор метода проектного управления зависит от конкретного проекта, состава команды и поставленных целей. Ни один из стилей управления не может быть полностью универсальным.
Кроме того, необходимо убедиться в наличии программного обеспечения для того вида проектного управления, который вы выбрали. Это необходимо для успешной настройки работы вашей команды.
Суть и принципы методологии Agile
Многие современные компании вырабатывают свои ценности, задачи, философию и миссию. Методология Аgile также имеет свои ценности. Не все из них можно реализовать в современных реалиях, но эти принципы могли бы лечь в основу компании мечты.
- Люди и коммуникация важнее, чем процессы и инструменты.
- Итоговый качественный продукт важнее, чем любая исчерпывающая документация.
- Сотрудничество с клиентом важнее, чем согласование условий договоров.
- Открытость к изменениям важнее, чем соблюдение пунктов первоначального плана.
Манифест раскрывает многие характеристики методологии Аgile. Например, в нём упоминаются:
- ранняя и бесперебойная поставка качественного программного обеспечения для удовлетворения заказчика;
- организация частых поставок рабочего программного обеспечения (ежемесячно, еженедельно, иногда чаще).
В рамках Agile крупные проекты разделяются на более мелкие части, каждая из которых имеет свой срок завершения.
Этот подход близок к декомпозиции, но есть существенное отличие: декомпозиция не подразумевает вовлечённость всей команды.
Перечислим ключевые элементы, составляющие основу гибкой методологии управления проектами Аgile.
- Осуществление визуального контроля. Работая над проектом, его участники пользуются разноцветными карточками, сигнализирующими о стадиях работы. Каждый из элементов может быть не этапе разработки, планирования, завершения и др. Благодаря карточкам, каждый член команды может наглядно представить, каково общее положение дел. Визуальный контроль – эффективный способ сонастроиться и убедиться в общем видении ситуации.
- Совместная работа всей команды (включая клиента) в общем пространстве. Это обеспечивает ускорение многих процессов, связанных с информированием, и создание благоприятной атмосферы, которая напрямую влияет на сотрудничество и эффективную партнёрскую работу.
- Адаптируемое управление. Функция руководителя проекта – не раздавать указания, а быть лидером, который выступает как направляющий основных правил работы и сотрудничества.
- Сотрудничество и партнёрство. Работа команды, руководителя проекта и клиента ведётся сообща: это обеспечивает понимание целей и исключает потерю важной. Прозрачные процессы позволяют моментально исключить возникшую проблему и найти удачное решение.
- Разделение работы на отдельные части. Благодаря такой системе снижается сложность проекта в восприятии команды, которая может успешно фокусироваться на каждой из частей.
- Анализ ошибок. Каждый цикл – это возможность освоения новых навыков командой. Участники совместно анализируют возникшие сложности, исключая повторение ошибок в следующих циклах.
- Ежедневные встречи и спринты. Спринт – это отрезок времени, за который команда выполняет поставленные задачи. Такой подход позволяет чётко видеть результаты. Команда по договорённости делит общее время работы на спринты. Допустим, выделено 20 спринтов, каждый из которых длится две недели.
На ежедневные встречи отводится не больше 15 минут, необходимых для сверки. Каждый член команды для себя отвечает на 3 вопроса:
- Что я делал вчера?
- Что я буду делать сегодня?
- Что мешает мне выполнять работу?
Итак, для внедрения Аgile методологии управления проектами необходимо соблюдение следующих условий:
- чётко обозначено значение проекта;
- клиент готов активно участвовать в работе над проектом;
- общий объём возможно разделить на шаги;
- результаты работы важнее документации;
- в рабочей группе не больше 7-9 участников.
Scrum и Kanban в методологии Agile
Рассмотрим популярные Аgile методологии: метод Kanban и Scrum..
Scrum подразумевает работу спринтами. Спринты – короткие итерации с одинаковой ограниченной продолжительностью. Всю работу выполняет небольшая команда (максимум 10 человек). Она включает в себя разработчиков, владельцев продукта и скрам-мастера, который обеспечивает правильное и эффективное применение Scrum. В команде принимаются совместные решения о том, кто, что, как, когда и как долго делает.
Спринты планируются совместными усилиями. Результаты команда также анализирует совместно, а затем представляет результаты. Решение проблем с продуктом или с ходом работы тоже является общей задачей. Для этих целей участники ежедневно делятся возникающими препятствиями, краткосрочными планами и ожиданиями друг от друга.
Kanban позволяет повысить качество сервиса. Он включает в себя принципы и практики, ускоряющие разработку продукта и приближающие его к ожиданиям заказчика.
Kanban отличается от Scrum и целями, и реализацией:
- более широкая область применения (к реализации новых продуктов можно смело добавить возможности поддержки и операционки);
- возможно постепенное внедрение (нет необходимости одномоментно менять текущие процессы) и более простое (можно не менять всю структуру);
- помимо ускорения процессов, стимулируется и их равномерность;
- значительное отличие метрик по сравнению со Scrum(не требуют предварительной оценки трудоемкости задач);
- нет фокуса на самоорганизации команды, нет прямой связи работы Kanban с ценностями Agile (при этом ценности Канбана во многом пересекаются с ценностями Agile: он тоже стремится к клиентоориентированности, сотрудничеству и прозрачности).
Kanban состоит из 6 практик, первая из которых наиболее популярная. Это уже описанная выше визуализация процесса, которая здесь называется «Канбан-доской». На физической или электронной доске располагаются стикеры, каждый из которых обозначает свою задачу.
Помимо Scrum и Kanban, есть много подходов, входящих в Agile. Однако другие активно развивающиеся сейчас гибкие методологии Аgile решают проблемы другого уровня.
Крупные организации сталкиваются с конкуренцией со стороны стартапов, и им необходимо быстрее выводить новые продукты на рынок, быстрее принимать решения, быстрее договариваться. Для таких организаций существуют подходы Large-Scale Scrum (LeSS), Scaled Agile Framework (SAFe) и Scrum of Scrums. Эти три подхода – самые популярные из способов масштабирования Agile в России.
Таким образом, широко распространённая в IT-сфере методология Agile, становится всё более популярной в деловой сфере – в маркетинге, менеджменте, обучении и др. Гибкое управление проектами осваивается многими частными компаниями и государственными структурами.
Правительства Норвегии и Новой Зеландии приняли решение о работе по схеме Agile. В России «Сбербанк» применяет Agile в коммерческой сфере. Знание методологии Аgile даёт значительное преимущество как небольшим, так и крупным компаниям.
Источник: dasreda.ru
Agile
Agile – набор методов и практик для гибкого управления проектами в разных прикладных областях, от разработки ПО до реализации маркетинговых стратегий, с целью повышения скорости создания готовых продуктов и минимизации рисков за счет итерационного выполнения, интерактивного взаимодействия членов команды и быстрой реакцией на изменения.
История зарождения Agile
Изначально термин Agile относился к ИТ-индустрии и употреблялся в контексте гибких методологий разработки программного обеспечения: экстремального программирования (XP), Crystal Clear, DSDM, Feature driven development (FDD), Scrum, Adaptive software development, Pragmatic Programming, быстрая разработка приложений (RAD) и других адаптивных методов, суть которых состоит в ускорении процессов создания продукта путем микропланирования, коротких производственных циклов и оперативного реагирования на изменения. Ключевой смысл этих Agile-практик отражен в манифесте гибкой разработки программного обеспечения (Agile Manifesto), который был выпущен инициативной группой программистов в феврале 2001 года в американском штате Юта [1]. Эта дата считается началом повсеместного распространения эджайл как практики управления проектами и организации бизнес-процессов не только в ИТ-отрасли, но и в других прикладных областях. Дополнительным драйвером развития Agile-подходов является микросервисная архитектура приложений, когда весь проект состоит из набора независимых слабосвязанных модулей, которые взаимодействуют друг с другом через открытые API-интерфейсы [2]. Популярность облачных технологий (SaaS-, PaaS-, IaaS- и других сервисных моделей) также стимулирует распространение эджайл.
Гибкость против жесткости: Agile vs Waterfall
В отличие классического Project Management (PM), когда проект жестко регламентирован заранее установленными требованиями (контрактами), Agile предполагает быстроту реагирования, а также гибкую адаптацию к внешним и внутренним изменениям. Это достигается с помощью итеративной разработки продукта и эффективного межличностного общения. В водопадной (каскадной) модели PM, которая считалась стандартом де-факто, проект состоит из функциональных задач, где каждая последующая работа четко регламентирована и начинается строго после окончания предыдущей, например, тестирование начнется только после того, как написан весь код. Жесткая определенность и обилие регламентирующей документации обусловливают длину производственного цикла. При этом продукт считается готовым лишь после выполнения всех этапов [3].
В Agile продукт создается серийно, когда каждая последующая версия работоспособного решения имеет больше функциональных возможностей, чем предыдущая. Такое уплотнение процессов позволяет существенно сократить сроки выхода готового продукта на рынок, что особенно значимо для бизнеса.
Основные идеи и принципы
4 ключевые идеи Agile сфокусированы на гибкости и адаптивности этого подхода:
- Эффективное взаимодействие между людьми – базовое средство достижения целей;
- Реально работающий продукт является главной ценностью;
- Изменения, которые могут повысить качество и конкурентоспособность продукта, приветствуются на любом этапе разработки;
- Контрактная, техническая и прочая регламентирующая документация вторична по значимости относительно работающего продукта и сотрудничества между участниками проекта.
Эти идеи раскрываются в 12 принципах Agile Manifesto [1]:
- работающий конкурентоспособный продукт, удовлетворяющий заказчика — лучший показатель прогресса и измеритель эффективности;
- оперативная и бесперебойная поставка продукта, удовлетворяющего заказчика;
- адаптивность продукта к новым требованиям, которые могут повысить его ценность и конкурентоспособность (возможность внесения изменений на любом этапе разработки);
- простота и прозрачность технических решений, документации, процессов и инструментов, чтобы не создавать лишней работы;
- частая поставка функционирующего продукта (раз в месяц/неделю или ещё чаще);
- постоянный темп работы всех участников проекта на протяжении всего его срока;
- минимизация организационных и информационных барьеров, лучший путь передачи информации — это личный разговор лицом к лицу;
- тесное и ежедневное общение исполнителей с заказчиком в течении всего проекта;
- мотивация участников проекта и обеспечение их всеми необходимыми условиями работы, поддержкой и доверием;
- самоорганизация и самоконтроль команды проекта;
- непрерывное улучшение профессиональных компетенций команды проекта;
- систематический анализ и постоянный поиск возможностей оптимизации командной и индивидуальной работы.
Преимущества и недостатки
Главные достоинства эджайл – быстрота, адаптивность и фокус на главном. Отсутствие бюрократии и периодичность поставок работающего продукта с постепенным наращиванием его функциональных возможностей существенно сокращают сроки получения итогового результата. Это особенно важно для бизнеса, т.к. благодаря стремительному выходу на рынок можно быстро занять свободную нишу.
Недостатки Agile являются прямым следствием его достоинств:
- снижение важности регламентирующей и технической документации может привести к ее нерелевантности или даже к фактическому отсутствию;
- краткосрочное планирование не всегда учитывает необходимость масштабирования продукта, что влечет ошибки в архитектуре;
- появление новых требований после нескольких итераций приводит к кардинальным изменениям архитектуры и переделкам уже созданных решений;
- накопление дефектов и снижение качества продуктов вследствие решения проблем самым простым и быстрым, но не всегда самым правильным способом.
Методы и средства реализации
Наиболее популярными Agile-подходами считаются Scrum (скрам) и Kanban (канбан).
В Scrum над проектом работает команда профильных технических специалистов (например, аналитик, программист, тестировщик, администратор) вместе с владельцем продукта (product owner) и модератором (scrum-мастер). Product owner аккумулирует бизнес-требования, соединяет команду исполнителей с заказчиком и следит за развитием проекта. Scrum-мастер управляет процессом организации разработки по Agile-принципам: проводит общие собрания (meetings, митинги), мотивирует и поддерживает команду.
В Scrum рабочий процесс делится на равные периоды от 1 до 4-х недель (спринты), в зависимости от проекта и команды. Перед стартом каждого спринта на митинге формулируются его задачи, а в конце обсуждаются результаты. Краткосрочность и измеряемость спринтов позволяет эффективно управлять проектной деятельностью, не перегружая участников проекта авралами [4].
В отличие от Scrum, в команде канбан отсутствуют роли владельца продукта и модератора, а процесс разработки делится не на универсальные спринты, а на стадии выполнения задач («Планируется», «Разрабатывается», «Тестируется», «Завершено»). Жизненный цикл задачи отображается на канбан-доске, физической или электронной. Такая визуализация делает рабочий процесс открытым и понятным для всех участников, что особенно важно в Agile, когда у команды нет одного формального руководителя.
Канбан, как и другие практики бережливого производства, пришедшие из Японии, направлен на достижение баланса и выравнивание нагрузки исполнителей. Эффективность работы оценивается по среднему времени жизни задачи, от начальной до конечной стадии. Если задача прошла весь путь быстро, то команда проекта работала продуктивно и слаженно. Иначе – необходимо решать проблему: искать, где и почему возникли задержки и чью работу надо оптимизировать [4].
Сегодня наблюдается некоторое слияние Scrum и Kanban, например, канбан-доски стали практически обязательным элементом популярных систем управления проектами (Jira, Trello, Битрикс.24, Basecamp, Мегаплан и т.д.), которые, в том числе, поддерживают методологию скрам [5].
Где, как и кем используется Agile
Сегодня эджайл применяется не только в управлении ИТ-проектами, а используется как эффективная практика организации труда небольших групп и творческих команд вместе с либеральными и демократическими методами менеджмента [1]. В частности, одной крупной телеком-компании благодаря внедрению Agile-практик в процессы кросс-функциональное взаимодействия всего за 3 месяца удалось достичь следующих результатов [6]:
- рост от продажи устройств на 45%;
- сокращение сроков запуска рекламных кампаний в 2 раза;
- рост плановой ежемесячной выручки от разработки продуктов на 20%;
- в 1,5 раза больше запущено рекламных кампаний по направлению В2В.
Гибкие практики управления также активно применяются и в банковском секторе. Например, за год в проектном офисе ЦентроБанка в 2 раза увеличилась скорость достижения результатов, повысилась вовлеченность сотрудников, улучшилась прозрачность и управляемость изменений [7]. Подобным опытом делится Райффайзен-Банк [8] и Сбербанк [9].
Предприятия нефтегазовой промышленности также активно используют Agile для повышения эффективности своих бизнес-процессов, открывая новые офисы и выстраивая работу филиалов по адаптивным принципам [10]. Кроме того, в рамках государственных проектов цифровизации, идеи и принципы эджайл используются в бюджетных и правительственных организациях [11]. В частности, правительство Новой Зеландии, Норвегии и США изучали методы Scrum для внедрения в своих министерствах [12].
Источники
- https://ru.m.wikipedia.org/wiki/Гибкая_методология_разработки
- https://ru.wikipedia.org/wiki/Микросервисная_архитектура
- https://ru.m.wikipedia.org/wiki/Каскадная_модель
- https://rb.ru/story/agile-scrum-kanban/
- https://habr.com/ru/company/dataart/blog/290340/
- https://onagile.ru/industries/telecommunication/agile-in-telecom
- http://www.tadviser.ru/index.php/Проект:Agile_в_Банке_России
- http://www.tadviser.ru/index.php/ Статья:Интервью_с_CIO_Райффайзенбанка_Андреем_Поповым
- https://vc.ru/sberbank/38179-agile-na-11-000-sotrudnikov
- https://vc.ru/office/37191-shtab-kvartira-ofis-kompanii-gazprom-neft-v-sankt-peterburge
- http://bujet.ru/article/375271.php
- https://biz.mann-ivanov-ferber.ru/2016/05/24/kak-agile-ispolzuyut-v-pravitelstve-norvegii-novoj-zelandii-i-ssha-ili-o-vazhnosti-izmenenij/
Источник: bigdataschool.ru
В Чем Секрет Популярности и Эффективности Методологии Agile
Сегодня в мире управления проектами существует множество инструментов и методологий, которые помогают улучшить качество производимого продукта.
Методология Аджайл (Agile methodology) — один из самых популярных способов достижения этой цели. Согласно исследованию State of Agile Report (2022), 89% респондентов, участвовавших в опросе, отмечают, что высокоэффективные Agile-команды ориентированы на людей и имеют сильную поддержку руководства.
В этой статье мы подробнее расскажем, что же такое Agile методология, на чем она основана и почему так популярна.
Что такое методология Agile?
Agile — это набор практик, целью которых является оперативная реакция на изменения в ходе рабочего процесса.
Такие подходы помогают командам быстро реагировать на обратную связь от клиентов и заказчиков, тем самым постоянно улучшая производимый продукт.
Стоит отметить, что Аджайл (от англ. agile — гибкий) — это не набор конкретных методов и не свод инструкций. Будет правильнее сказать, что Agile — это группа методологий, которые стремятся к улучшению производимого продукта с помощью повторяющихся рабочих циклов и постоянного фидбека от клиентов.
Философию Agile характеризуют гибкость и скорость команды, а также максимальная прозрачность рабочих процессов.
Проще говоря, Agile — это не про отчетность, документооборот и четкий план, а про постоянное общение с клиентом и готовность оперативно реагировать на изменения в ходе проекта.
Чаще Agile используется для разработки программного обеспечения. В этой сфере Аджайл базируется на итерациях фаз программирования и тестирования на протяжении полного жизненного цикла продукта. В Agile и разработка, и тестирование выполняются одновременно, в отличие от методологии Waterfall, в которой проект выполняется поэтапно.
В программировании методология Agile начинается с описания клиентом результата, которого он стремится достичь. Команде важно четко понимать, какие проблемы с помощью разработанного продукта хочет решить заказчик.
С началом работы команда циклично проходит процессы планирования, проектирования, реализации и оценки. В ходе выполнения этих процессов конечный результат может измениться, если выяснится, что он будет еще больше соответствовать целям и стремлениям клиента.
Постоянное взаимодействие команды с заказчиком и остальными заинтересованными лицами способствует оперативному обсуждению грядущих изменений. Это позволяет принимать полностью обоснованные и согласованные со всеми участниками команды решения.
Непрерывное стремление компаний улучшить производимый продукт помогает им оставаться конкурентоспособными на протяжении долгого времени.
Преимущества Agile:
- Быстрое обнаружение и исправление ошибок.
- Прозрачность рабочего процесса.
- Частые и ожидаемые релизы.
- Предсказуемая стоимость проекта.
- Оперативное принятие решений.
- Нацеленность на пользователей.
- Конечный продукт является лучшей своей версией.
- Высокий уровень удовлетворенности заказчиков.
Agile манифест
Публикация Agile манифеста в 2001 году знаменовала рождение Agile как методологии.
Началась эта история в американском штате Юта, где в начале 21 века 17 независимых программистов собрались для обсуждения будущего разработки программного обеспечения.
Группа сошлась во мнении, что главная проблема среди команд разработчиков заключалась в том, что они были чрезмерно сосредоточены на планировании и документировании циклов разработки ПО. И упускали из виду то, что действительно имело значение, а именно удовлетворенность заказчиков.
Манифест группы разработчиков стал новаторским и в корне изменил подход к сотрудничеству с клиентами и достижению целей команды. Agile Manifesto не являет собой свод правил, он выделяет ключевые ценности, которые ставят взаимодействие с людьми на первое место.
За последние 20 лет с момента создания манифест приняли многие команды и организации из разных профессиональных сфер. Сегодня документ доступен более чем на 50 языках, включает в себя 4 ценности и 12 принципов.
4 ценности Agile манифеста:
- Взаимодействие с людьми важнее рабочих процессов и инструментов.
- Качество продукта важнее подробной документации.
- Сотрудничество с клиентами важнее, чем обсуждение условий контракта.
- Реагирование на изменения важнее следования первоначальному плану.
Авторы манифеста отметили, что не отрицают необходимость пунктов, находящихся в правом столбце. Но все же в приоритет выносят ценности, расположенные слева.
12 принципов Agile манифеста о разработке программного обеспечения:
- Главный приоритет — удовлетворение потребностей клиента. Достигается это за счет постоянной и систематической поставки ценного ПО.
- Изменения требований одобряются, независимо от того, на какой стадии разработки находится продукт.
- Частые релизы усовершенствованного продукта приветствуются.
- Разработчики и представители бизнеса должны работать сообща ежедневно на протяжении всего проекта.
- Личное общение с командами и внутри них является наилучшим способом передачи информации.
- Мотивация сотрудников должна быть в приоритете. Чтобы работа была выполнена качественно, создайте атмосферу уважения, доверия и расширения возможностей.
- Работающее ПО — главный показатель прогресса.
- Важно, чтобы инвесторы, команда разработчиков и пользователи поддерживали постоянный рабочий ритм. Именно Agile помогает наладить цикличный и устойчивый процесс разработки.
- Непрерывное внимание к совершенству проектирования и качеству разработки повышает гибкость проекта.
- Простота — необходимая часть эффективной работы с Agile.
- Самоорганизованные команды создают наилучшие требования, технические и архитектурные решения.
- Чтобы быть более эффективными, команды должны систематически анализировать собственную работу и постоянно корректировать ее.
Популярные Agile методологии
Существует множество различных методологий (или фреймворков) гибкой разработки, которые держат за основу ценности и принципы Agile манифеста. Канбан (Kanban), Скрам (Scrum), Бережливое производство (Lean) и Экстремальное программирование (XP) — часто используемые из них.
Kanban
Это визуализированный подход к управлению проектами. Используя Канбан, команды визуализируют задачи при помощи доски и стикеров либо специальных онлайн-инструментов.
Задачи перемещаются между столбцами, обозначающими их статус. Такой подход позволяет эффективно расставлять приоритеты, контролировать прогресс выполнения проекта, а также ограничивать объем незавершенной работы.
Scrum
Скрам — это методология управления проектами, в которой командой руководит Скрам-мастер. Его главная задача состоит в устранении преград на пути к завершению проекта.
Работа в команде делится на короткие повторяющиеся циклы, которые называются спринтами и обычно длятся 1-4 недели. При этом команда собирается на ежедневные митинги (стендапы), чтобы обсудить текущие задачи и препятствия, которые предстоит преодолеть.
Экстремальное программирование (XP)
Название методологии произошло от идеи использовать полезные классические методы разработки ПО, подняв их на «экстремальный» уровень.
Доступно проиллюстрирует идею XP способ «парного программирования». В этом случае один разработчик занимается написанием кода, а его коллега непрерывно просматривает и проверяет написанное, не дожидаясь окончания работы первого программиста.
Бережливое производство (Lean)
Ключевой задумкой бережливого производства является максимально экономный и разумный подход к ресурсам проекта. Методология Lean — это набор инструментов и принципов, направленных на выявление и устранение возможных потерь для ускорения процесса разработки.
В понятие потерь входят не только затраты времени, финансов и труда. Сюда же относится и нереализованный творческий потенциал команды и каждого ее участника.
Другие гибкие методологии разработки ПО
В управлении проектами существует ряд других методологий управления проектами кроме тех, что мы перечислили выше:
- Разработка, управляемая функциональностью (FDD).
- Crystal Clear.
- Метод разработки динамических систем (DSDM).
- Разработка через тестирование (TDD).
- Адаптивные рамки проекта (APF),
- и другие.
Каждая методология воплощает в себе принципы частых итераций, непрерывного обучения и высокого качества производимого продукта.
Как выбрать методологию проекта , которая максимизирует шансы на успешную реализацию продукта? Сперва важно подробно изучить каждую из них и выбрать наиболее подходящую вашему продукту, команде и клиенту.
Что это будет, классический Скрам из учебников или смесь Канбан и XP, зависит целиком и полностью от вас. Главное, чтобы выбранный способ удовлетворял потребностям проекта. Гибкость приветствуется даже в выборе методологии этой самой гибкости.
Например, разработчики программного обеспечения чаще предпочитают Scrum и XP, в то время как Канбан — любимец команд, ориентированных на сервис (IT, маркетинг или отдел кадров).
Кому подойдет методология Agile?
Несмотря на популярность и высокие результаты при использовании методологии Agile, применять ее в работе над каждым проектом нет никакой необходимости. Все же Agile не панацея.
К примеру, простой баннер или веб-сайт можно сделать поэтапно, используя техническое задание от заказчика.
Существует несколько условий, при которых проекту наверняка потребуется гибкая методология управления:
- Если грядущий проект технологически сложный и комплексный.
В этом случае разумнее реализовывать проект постепенно и постоянно его тестировать. Это поможет сэкономить непредвиденные расходы.
- Если проект продолжительный по времени.
Чем дольше будет длиться работа над проектом, тем сложнее прогнозировать и планировать его развитие в отдаленном будущем.
- Если в реализации проекта много неопределенных моментов.
Так бывает, когда команда разрабатывает инновационный продукт. В этом случае невозможно заранее проработать весь его функционал. Поэтому логичнее идти к созданию продукта небольшими шагами и опять же постоянно его тестировать.
- Если количество идей по проекту превышает возможности команды.
Когда идей много, внедрять их одновременно — решение рискованное и экономически нецелесообразное. Ведь заранее сложно сказать, какие из них окажутся удачными.
- Если клиент хочет участвовать в каждом этапе реализации проекта.
Идеальное условие для внедрения Agile методологий — это заинтересованность заказчика в плотном сотрудничестве с командой.
Инструменты для работы с Agile-проектами
Вовлеченность в проект нескольких команд делает рабочий процесс менее прозрачным. Кроме того, менеджеру, руководителю и заказчику становится все сложнее следить за прогрессом проекта, контролировать его реализацию и вносить изменения.
Облегчить работу с комплексными проектами и настроить взаимодействие между участниками команды помогут инструменты управления Agile-проектами. С ними вы всегда можете видеть общую картину проекта, контролировать загрузку работников, общаться с командой и держать заказчика в курсе изменений и корректировок.
Онлайн-диаграмма Ганта с легкостью выполнит все эти задачи и упростит работу с проектом всем его участникам.
Онлайн диаграмма Ганта GanttPRO
Ведите проекты, управляйте временем, ресурсами и финансами.
Какую гибкую методологию управления проектами предпочитаете вы?
Agile — незаменимый подход к управлению проектами, который держит команду в тонусе и постоянно помогает добиваться лучших результатов. Благодаря тесному сотрудничеству команды и заказчика, а также вовлеченности и обратной связи потребителей продукта, результат приносит еще большее удовлетворение каждому участнику проекта.
А какие Agile методологии управления проектами предпочитает ваша команда? Делитесь в комментариях ниже.
Источник: blog.ganttpro.com