Чем камин отличается от буржуйки?



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



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



Когда вы выступаете в роли источника требований в софтовом проекте, модель отношений точно такая же — вы что-то заказываете, а кто-то, кто умеет, этот заказ выполняет. Даже сроки в стройке проебываются так же, как в разработке.



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



Для того, чтобы отличить камин от буржуйки, достаточно простого житейского опыта. А чтобы отличить фичу на час от фичи на день — нужен наметанный глаз. И дело вовсе не в том, что у прораба работа простая, а у программиста — сложная. Дело в банальной привычке: программисты, если не тренируются специально, точно так же ошибаются в оценке, как и вы.



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