Необоснованный оптимизм
Оптимизм атакует программные проекты из всех источников. Что касается оценки проекта со стороны разработчиков, вице-президент Microsoft Крис Питерс (Chris Peters) заметил: «Никогда не следует опасаться того, что оценка, созданная разработчиком, окажется излишне пессимистичной, потому что разработчики всегда назначают слишком оптимистичные сроки» (Cusumano and Selby 1995).
Изучив 300 программных проектов, Майкл ван Генахтен заметил, что в оценках разработчиков обычно закладывается допуск на оптимизм, составляющий от 20 до 30 % (van Genuchten 1991). Хотя руководители иногда жалуются на обратное, разработчики не склонны к завышению при оценках проектов — наоборот, их оценки обычно оказываются заниженными!СОВЕТ № 20
Не уменьшайте оценки, полученные от разработчиков, — скорее всего, они и без того излишне оптимистичны.
Оптимизм также проявляется и в высшем звене. При изучении 100 оценок проектов Министерства обороны США обнаружился устойчивый «коэффициент фантазии», равный примерно 1,33 (Boehm 1981). Возможно, руководители проектов и начальство и не предполагают, что проекты могут быть сделаны на 30 % быстрее или дешевле, чем в действительности, но они хотят, чтобы это произошло. Это само по себе является проявлением оптимизма.
Несколько стандартных вариаций на тему оптимизма. Над этим проектом мы будем работать более эффективно, чем над предыдущим проектом. В последнем проекте все шло наперекосяк. В этом проекте проблем будет меньше. Проект начинался медленно, и мы прошли трудный начальный период. Тем не менее мы многому научились на своих ошибках, и ближе к концу мы будем работать гораздо эффективнее, чем в начале.
Учитывая, что оптимизм является почти неотъемлемой частью человеческой натуры, оценки программных проектов иногда нарушаются из-за явления, которое я называю «сговором оптимистов». Разработчики предоставляют оптимистичные оценки. Высшему руководству нравятся оптимистичные оценки, потому что они подразумевают достижимость желательных деловых целей. Менеджерам нравятся эти оценки, потому что они подразумевают возможность выполнения указаний начальства. Программный проект набирает силу, и никому даже в голову не приходит критически проанализировать обоснованность самих оценок.