Repeatable vs effective

повторяемость или эффективностьВчера, провёв отличный весёлый вечер с двумя CTO харьковских IT компаний, мы горячо обсуждали evolutionary design vs. design upfront.

Или по-русски: что лучше:

а) быстро выпустить то, что нужно сейчас, тем самым повысив вероятность переработок потом, но получить при этом обратную связь и подкорректировать курс проекта?

б) либо же - разработать продуманную гибкую архитектуру, которая с большей вероятностью сможет вместить новые требования?

Тема стара как мир (новый IT мир, я имею в виду).

В итоге дискуссия свелась к теме повторяемости результата.

Поясню позицию моих коллег. Если я CEO большой компании, то мне естественно хотеть повторяемости результатов успешных проектов.

Этого можно достить структуризацией фазы анализа рынка, сбором требований, продумыванием архитектуры. На эти фазы проекта были бы привлечены самые опытные эксперты компании. Когда всё решено и все основные риски разрешены, работу можно передать инженерам. Шансы, что они завалят такой проект конечно есть, но они уже ниже. Так как много работы сделано, решения продуманы, заказчик успокоен. Это намного лучше, чем выполнять проекты непредсказуемо, пусть даже какой-то процент их будет эффективность выше средней по рынку.

Меня спросили, не то ли этого (повторяемость процесса) чего я добиваюсь от компаний, коуча Scrum. Я подумал, и сказал, что нет.

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

Почему же меня не интересует повторяемость? Она меня интересует, но она для меня не первична. Agile говорит от имени заказчика. А что нужно заказчику конкретного продукта: повторяемость процесса на вашей фабрике? или же качественный, быстрый и максимально дешёвый продукт, решающий сегодняшнюю проблему?

Я, думаю, что второе. По крайней мере мне импонируют такие заказчики. Такому заказчику нужен продукт: качественный, полезный и на выгодных условиях. Даже если, это лучший продукт, который был когда-либо выпущенный вашей компанией, и вы никогда не сможете повторить этот результат, ему он всё равно нужен.

Фокусируясь на повторяемости, как мне кажется, вы ограничиваете возможность использовать преимущества, которые даёт вам текущая ситуация. Вы стопите креативность. Вы строите фабрику, которая не использует максимум интеллектуального ресурса ваших сотрудников. Хотя, это самый ценный русурс, который у вас есть (даже, если вы этого ещё не поняли).

Это моё IMHO на сегодняший день, 7 ноября 2008 года.

Читать обсуждения этой темы в группе AgileUkraine