Почему Agile стал популярен именно сейчас?
К мыслям на эту тему меня натолкнула схватка Славы Панкратова с Асхатом Уразбаевым на AgileLabs’09.
Когда-то давным давно компьютеры были большими, а программы маленькими. Стоимость разработки программы была во много раз меньше стоимости компьютера, на котором она выполнялась. Для справки, в 50х стоимость IBM 650 равнялась годовой зарплате толпы из 500 программистов [1]. Сейчас годовой доход средненького программиста это пара десятков рабочих станций, либо минимум пяток не сильно убогих серверов.
Представим себе мифический проект по разработке ПО в вакууме. Если в 50-х годах для проекта требовалось 50 человеко-лет (охрененно большой по тем временам проект), то никому бы в голову не пришло выдумывать какие-то эффективные методологии управления программистами. Даже найдя серебряную пулю, позволяющую сократить затраты на разработку ПО в 10 раз, мы бы сэкономили 8% от общей стоимости информационной системы. Мало кто был заинтересован в этом.
Почему «именно сейчас», надеюсь, понятно. Но почему именно Agile?
Каскадная модель (по крайней мере в том виде, в каком ее поняли) никогда не работала хорошо, просто до начала 80-х это мало кого волновало. А вот теперь волнует и все пытаются искать достойную ей альтернативу.
Мой (и не только мой) опыт показывает, что в небольших командах (до 7 человек) и в случае, если ваш Agile не является экстремальным XP, он действительно дает ощутимую экономию затрат. При чем иногда в разы.
Естественно не обошлось и без пиара. Как правило, люди умалчивают о своих неудачах, но не против похвастаться успехами. Из-за этого и пошла волна публикаций на тему «Agile - это круто». И Agile пошел в массы.
Многие думают, что Agile дает ощутимую экономию и в больших проектах, но я бы пока не торопился с мыслями на эту тему. Они у меня конечно же есть, но это уже будет ответом на другой вопрос Славы к Асхату.
Источники для тех, кто мне не доверяет.
1. Pj Radcliffe, Software Engineering : A Career Path in Transformation, Proceedings of the 2005 ASEE/AaeE 4th Global Colloquium on Engineering Education