ѕоиск
 лиенты

Agile и управление проектами

ћногие инновационные компании на прот€жении почти двух дес€тков лет используют Agile дл€ совершенствовани€ своей работы. ќ том, что это такое и чем Agile отличаетс€ от привычных подходов к управлению проектами, рассказывает старший инженер по тестированию компании Ђјпланаї и преподаватель корпоративного университета Ч –оман ƒмитриев.

 

„то такое Agile

Agile (с англ. Ђгибкийї) Ч это образ мышлени€ со своей системой ценностей, дл€ реализации которых на практике примен€ют различные фреймфорки управлени€ рабочим процессом. ‘реймворк Ч это набор базовых элементов и правил, своего рода каркас, на котором строитс€ процесс.

Agile похож на философию. ќн содержит в себе р€д установок, которым следуют, и которые вли€ют на поведение. Ќапример, буддисты вер€т в возможность достижени€ просветлени€. ƒл€ этого они медитируют, практикуют умеренность и стараютс€ не причин€ть вреда другим. ј евангелисты Agile убеждены, что работающие продукты выпускают команды самосто€тельных профессионалов.

“ермин Agile по€вилс€ в 2001 году, когда семнадцать разработчиков (включа€ создателей фреймворка Scrum Ч ƒжеффа —азерленда и  ена Ўвабера) собрались на американском курорте —ноубЄрд, чтобы обсудить легковесные методы разработки ѕќ. –езультатом встречи стало создание Agile-манифеста, состо€щего из четырех ценностей и 12 принципов. —пуст€ врем€, все легковесные методы разработки, удовлетвор€ющие манифесту, стали называтьс€ гибкими.

 

 

{title}

 

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

«вучит довольно сложно, поэтому объ€сню некоторые термины. »так, эмпирическое управление Ч метод проб и ошибок. –уководитель действует опытным путем, получает некий результат, анализирует его и дальше действует исход€ из анализа. »теративный подход (от англ. iteration Ч Ђповторениеї) Ч повторение одной и той же последовательности действий из раза в раз. Ёто можно представить в виде замкнутого цикла, который повтор€етс€ из раза в раз. Ќапример, итерацией в Scrum €вл€ютс€ спринты, длительность которых может быть от одной до четырех недель.

»нкрементальный подход (от англ. increment Ч Ђувеличениеї) Ч частична€ реализаци€ и медленное наращивание функциональности, дополнительных характеристик. ‘актически, это Ђприращиваниеї чего-либо к чему-то уже имеющемус€. ¬ данном контексте это означает, что с каждым витком итерации происходит Ђприростї функциональности продукта. ƒинамическое образование требований означает, что требовани€ формируютс€ в процессе, они не статичны, а посто€нно мен€ютс€.

Agile-методологи€ управлени€ проектами или гибкий подход

–азобратьс€ в том, что из себ€ представл€ет Agile, действительно, может быть непросто. ќсобенно, если учесть, что в сети часто встречаютс€ статьи с заголовками: ЂAgile-методологи€ разработкиї или ЂAgile-методологи€ управлени€ проектамиї. Ёто говорит о том, что не все верно понимают его значение. Agile Ч это не методологи€. ¬озможно, ошибка по€вилась при переводе, а затем ее подхватили и растиражировали. ¬ англо€зычных источниках ничего об этом нет.

ћетодологи€ Ч это учение об организации разных видов де€тельности, набор правил, выполн€€ которые получаешь строго ограниченный конечный результат. Agile Ч это не алгоритм, а прилагательное Ч Ђгибкийї. Agile про то, что от правил можно отступать, экспериментировать и получать разные результаты.

Agile и Waterfall

–аньше превалировали более т€желовесные модели. ќдной из самых распространенных дл€ управлени€ процессом разработки ѕќ была Waterfall или Ђ аскадна€ модельї (среди других Ч V-модель, спиральна€ модель и прочие). Ётот подход хорошо работал дл€ больших команд и позвол€л справл€тьс€ с невозможными до этого проектами.

¬ Ђ аскадной моделиї процесс разработки выгл€дит как поток, последовательно проход€щий этапы формировани€ требований, анализа требований, проектировани€, разработки, тестировани€ и сопровождени€. “о есть переход к следующему этапу был возможен только после полного и успешного завершени€ предыдущего. ѕереходов назад, вперед или пересечени€ этапов не происходило. ƒругими словами, если в процессе тестировани€ по€вл€лась нова€ иде€, приходилось игнорировать еЄ или переделывать предыдущие этапы. 

Ђ аскадную модельї часто критикуют за долгий этап планировани€, за недостаточную гибкость и чрезмерно формальный подход к управлению проектами. “ак как рабоча€ верси€ продукта по€вл€етс€ только в конце всех этапов, то, дл€ внесени€ корректировок при вы€влении несоответствий или изменении требований, необходимо пройти этапы повторно, что может зан€ть много времени. «ачастую это приводит к повышению финансовых, репутационных и технологических рисков.

Ќесмотр€ на видимые недостатки, некоторые консервативные компании придерживаютс€ именно этого подхода, счита€ его более основательным. ќсобенно, если скорость выпуска продукта не €вл€етс€ дл€ них приоритетом.

Agile-управление проектами подразумевает дробление одной большой задачи на множество маленьких частей, над которыми команды в большинстве случаев могут работать параллельно. √ибкие подходы нацелены на минимизацию рисков за счет перехода разработки к коротким итераци€м. »тераци€ Ч это программный проект в миниатюре, включающий в себ€ все задачи, необходимые дл€ выдачи инкремента (мини-прироста функциональности): анализ требований, программирование, тестирование. ќдна итераци€ обычно длитс€ от одной до восьми недель.

 

¬ кросс-функциональных Agile-командах есть все необходимые специалисты: аналитики, разработчики, тестировщики и дизайнеры.  роме того, дл€ хорошей коммуникации между ними желательно (но не об€зательно), чтобы участники находились в одном месте: под одной крышей, на одной территории.

—уть Agile-подхода в том, чтобы собрать пожелани€ заказчиков/клиентов, расставить приоритеты в соответствии с ценностью, которую они несут, затем создать минимально жизнеспособный продукт дл€ демонстрации и получить по нему обратную св€зь. Ёто экономит и врем€, и деньги, ведь после демонстрации могут возникнуть новые требовани€, замечани€ или идеи по изменению продукта. »спользу€ опыт как единственный источник актуальной информации, команда может активно развивать свой продукт в том направлении, которое приведет к созданию наивысшей бизнес-ценности дл€ клиента, по пути отсека€ те идеи, которые не оправдались.

 

 омпании, внедрившие Agile

≈сли посмотреть, какие западные IT-компании используют Agile в своих бизнес-процессах, то получитс€ список лидеров  ремниевой долины: Apple, Facebook, Google, Amazon, Netflix, Uber, Airbnb.

ј если лидеры рынка давно и успешно используют Agile дл€ организации рабочего процесса, то можно сделать логичный вывод Ч он работает и отлично справл€етс€ с тем, что от него ожидают.

—реди российских компаний тоже немало приверженцев Agile, например, —бербанк (Agile-технологии в —бербанке трансформировались и приобрели свой формат Ч Sbergile), ћ¬идео, ћ“—, яндекс и прочие. Agile примен€етс€ не только в IT, но и в производственном секторе. Ќапример, Toyota, Procter&Gamble и многие другие уже оценили все преимущества Agile дл€ управлени€ проектами и продолжают развиватьс€ в этом направлении.