Найти в Дзене

Кто такой этот ваш эджайл и как (не) учиться по мемам ч.1

На создание этой статьи меня натолкнул мем, найденный на просторах интернета. Что же с картинкой то не так?
Автор засунул Каскадную модель, Agile и Канбан в вещи одного порядка. А это не совсем так. 
Так не пойдет, решила я, будем разбираться, кто такой этот ваш эджайло-канбано-скрам.
Итак, представим, что мы с вами планируем пилить проект (ну мы это любим). Мы знаем, 
• кто наш заказчик и уровень его вовлеченности в процесс, 
• критерии успеха проекта, 
• с какой командой нам предстоит работать (чудо-мир), 
• степень проработки требований 
• и даже количество необходимой документации по проекту (невероятно, фантастика)... 
Собирая все эти факты на начальном этапе, мы принимаем ответственное решение: мы используем традиционный подход или гибкий (aka Agile).  Что же подразумевает собой гибкий подход? Это огромный вопрос, который в пост бы не уложился. Но, long story short, в 2001 году собрались 17 крутых разработчиков и сказали: "Ребята, вот эти ваши долгие круги ада, через ко
Оглавление

На создание этой статьи меня натолкнул мем, найденный на просторах интернета.

На самом деле картинка смешная, очень отображает суровую действительность. Но кое-что с ней не так.
На самом деле картинка смешная, очень отображает суровую действительность. Но кое-что с ней не так.

Что же с картинкой то не так?


Автор засунул Каскадную модель, Agile и Канбан в вещи одного порядка. А это не совсем так. 

Так не пойдет, решила я, будем разбираться, кто такой этот ваш эджайло-канбано-скрам.

Итак, представим, что мы с вами планируем пилить проект (ну мы это любим). Мы знаем, 
• кто наш заказчик и уровень его вовлеченности в процесс, 
• критерии успеха проекта, 
• с какой командой нам предстоит работать (чудо-мир), 
• степень проработки требований 
• и даже количество необходимой документации по проекту (невероятно, фантастика)... 
Собирая все эти факты на начальном этапе, мы принимаем ответственное решение: мы используем традиционный подход или гибкий (aka Agile). 

Что же подразумевает собой гибкий подход?

Это огромный вопрос, который в пост бы не уложился. Но, long story short, в 2001 году собрались 17 крутых разработчиков и сказали: "Ребята, вот эти ваши долгие круги ада, через которые проходит команда разработки на любом проекте — это очень муторно и неповоротливо. Мы тут сообразили и написали Agile Манифест, в котором изложили основные концепции гибкого подхода. Разбирайтесь короче. Работать будет просто пушка!". А уж там такие ребята крутые, они шарили, что говорят. Поверьте на слово, они бы фигни не сказали! 
И вот вам для понимания общей картины 4 кита ценности Agile подхода из этого самого манифеста:

  1. Люди и взаимодействие важнее процессов и инструментов
  2. Работающий продукт важнее исчерпывающей документации
  3. Сотрудничество с заказчиком важнее согласования условий контракта
  4. Готовность к изменениям важнее следования первоначальному плану

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

Почти понятно, но не очень

Это все круто и понятно. С этим разобрались. "А откуда тогда скрамы и канбаны?" 😵 — спросите вы. И зададите хороший вопрос. 

SCRUM, Kanban — это наиболее популярные методологии (фреймворки) Agile подхода. То есть, если Agile — это своего рода "философская" концепция, описывающая, как хорошо бы было, чтобы было (ну вы поняли), то SCRUM и Kanban -- это структурированный набор правил и подходов к процессу управления проектом. Ну это когда тебе говорят «Делай так вот в это время, еще делай вот так, а вот так не делай».

И кстати, методологий гибкой разработки сильно больше, чем две. Просто на практике чаще всего разработчики сталкиваются именно с этими двумя красавчиками. Есть всякие Lean'ы, экстремальное программирование, DSDM'ы, FDD'шки. Сбер вообще свой подход придумал и назвал его
Sbergile.  

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