Что такое гибкий итеративный подход и где он используется?

Опубликовано: 2018-06-22

Чтобы не отставать от рыночного спроса, быстро развивающиеся сценарии цифрового бизнеса оказывают все большее давление на ИТ-директоров, чтобы обеспечить столь же быструю разработку программного обеспечения.

По данным Gartner, все больше ИТ-организаций выбирают Agile-разработку, чтобы упростить управление проектами и продемонстрировать ценность для бизнеса.

В 12 ежегодном отчете о состоянии Agile было обнаружено, что одной из пяти основных причин принятия Agile-методологий было ускорение доставки программного обеспечения , которое увеличилось до 75% в 2018 году. Техника 2018 года.

Что такое гибкая итеративная разработка?

Гибкие методы разработки программного обеспечения чаще всего описываются как итеративная и инкрементальная разработка. Итеративная стратегия является краеугольным камнем практик Agile, наиболее известными из которых являются SCRUM, DSDM и FDD. Общая идея состоит в том, чтобы разделить разработку программного обеспечения на последовательности повторяющихся циклов (итераций). Каждой итерации выдается фиксированный отрезок времени, известный как таймбокс. Один таймбокс обычно длится 2-4 недели.

Итеративная модель Agile, пожалуй, лучше всего описана Крейгом Ларманом в его книге Agile and Iterative Development — A Manager’s Guide . Ларман объясняет, что модель работает на колесе ADTC (анализ, проектирование, кодирование, тестирование). Это означает, что каждый итерационный цикл включает в себя Анализ плана, Дизайн, его Код и одновременно Тест. Колесо ADTC более технически называется циклом PDCA (Планирование, Проектирование, Проверка, Регулировка). Команда Agile реализует цикл PDCA для каждой итерации отдельно следующим образом:

P (План) - Планирование итерации

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

D (Дизайн) – Выполнение итерации

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

C (Проверить) - Обзор итерации

Также известный как шаг «проверки», обзор итерации выполняется с владельцем продукта. Команда показывает протестированный результат Владельцу продукта, который затем проверяет выполненную работу и выясняет, соблюдены ли все критерии.

A (Корректировка) — Ретроспектива итерации

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

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

Преимущества гибкой итеративной разработки

Гибкое управление проектами было создано как более гибкая альтернатива традиционно жесткому подходу Waterfall.

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

Судхакар Горти, ИТ-директор по ресурсам данных об окружающей среде, соглашается: « Одно из основных преимуществ Agile по сравнению с Waterfall заключается в том, что вы видите результат на итеративной основе, а владелец продукта может принять решение о внесении изменений в бэклог продукта».

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

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

Оценка рисков . Agile-итерация позволяет выявлять риски и снижать их на ранних этапах разработки, чтобы избежать скачков скорости позже по временной шкале.

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

Где используется гибкий итеративный подход?

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

nTask создан по методологии Scrum. Scrum обеспечивает независимую командную работу с помощью колеса ADCT, над которым различные команды nTask работали совместно в течение двухнедельных спринтов (итераций).

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

Брэд Мерфи, генеральный директор консалтинговой компании Gear Stream, специализирующейся на Agile, считает, что Agile Iterative подход теперь широко применим в областях, отличных от разработки программного обеспечения.

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

Согласно исследованиям Deloitte Center for Government Insights, 80% крупных федеральных ИТ-проектов назвали себя Agile Iterative в 2017 году. Одной из причин такого роста было легко объяснить сокращение времени, необходимого для гармоничного завершения проекта. с полной стоимостью проекта.

Другой отчет Deloitte за 2015 год показывает, что такие банки, как Barclays, также начали использовать итерационные подходы, такие как Scrum, в более чем 20% своих внутренних аудитов. Barclays признал выгоду от SCRUM в таких областях, как управление рисками и планирование.

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

Рики Барр, управляющий директор по внутреннему аудиту United Airlines, резюмирует свой опыт использования гибкого внутреннего аудита Deloitte как «ускорение цикла аудита за счет ограниченных по времени итераций».

Еще 8 лет назад многие корпорации, такие как подавляющее большинство клиентов Gartner, все еще использовали традиционные методы Waterfall для разработки приложений.

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